2012-11-13 1 views
0

내 호스팅 서비스의 하위 디렉토리 sapa에 Rails 3 앱을 배포하고 있습니다. /sapa 하위 디렉토리를 치기 위해 routes.rb에 범위를 추가했으나 /sapa/assets 대신 .js 및 .css에 대해 /assets (내 앱에 속하지 않음)을 보았습니다. (assets, 그러나 웬일인지, 그것은하지 않는다). 따라서 내 routes.rbscope 문을 사용하고 application.rbconfig.assets.prefix 문을 사용하고 있습니다.레이크 에셋을 만들려면 어떻게합니까? 올바른 위치에 빌드를 프리 컴파일합니까?

불행하게도,이 public/sapa/assets로 대신 단지 public/assets로 구축하는 내 rake assets:precompile됩니다. 파일을 올바른 위치에 복사하면 모든 것이 작동하지만 다른 사람이 나에게 더 나은 방법을 알려주고 싶습니다 (꼭 있어야합니다). 상대적인 애셋 경로 (예 : /이 아님) 또는 레일스가 이해할 수 있도록 내가 원하는 것을 수행하는 표준 방법을 얻을 수 있습니까? 어떤 도움을 주시면 감사하겠습니다

config.assets.prefix = "/sapa/assets" 

/config/routes.rb

scope "sapa" do 
    … 
end 

/config/application.rb.

답변

0

정의에 따르면 (Configuring Rails 참조) config.assets.prefix 구성은 자산이 제공되는 위치를 정의하는 데 사용됩니다.

config.assets.prefix defines the prefix where assets are served from. Defaults to /assets. 

당신이 설명 할 수는 config.assets.prefix 변수 "/ 연합/자산"퍼팅에 대한 이유가 있었다? 아마도 config.assets.paths 구성 변수를 찾고 있었습니까?

config.assets.paths contains the paths which are used to look for assets. Appending paths to this configuration option will cause those paths to be used in the search for assets. 
+0

감사합니다. 그러나 저는 그것이 내가 필요한 것이라고 생각하지 않습니다. 나는 나의 질문이 불분명하여 두려움을 다시 썼다는 것을 두려워한다. 나는 오늘 밤 당신의 제안을 시험 할 것이지만, 나는 그것이 내가 필요한 것이 아니라고 확신한다. –

관련 문제