2012-11-13 20 views
0

我正在將我的Rails 3應用程序部署到我的託管服務的子目錄sapa。要打/sapa子目錄,我添加了一個範圍routes.rb,但這使應用程序看起來在/assets(這不是我的應用程序的一部分).js和.css而不是/sapa/assets(我對assets很滿意,但由於某種原因,它不這樣做)。因此,我在我的routes.rb中使用了scope聲明,在我的application.rb中使用了config.assets.prefix聲明。如何製作耙子資產:預編譯構建到正確的位置?

不幸的是,這導致我的rake assets:precompile建立到public/sapa/assets而不是隻是到public/assets。我可以將文件複製到正確的位置並且一切正常,但我希望有人告訴我更好的方法(必須存在,對吧?)。我可以得到一個相對資產路徑(即沒有初始/),或者可以採用更爲標準的方式來執行我想要的操作,以便軌道能夠理解?

/config/application.rb

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

/config/routes.rb

scope "sapa" do 
    … 
end 

任何幫助,將不勝感激。

回答

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

謝謝@krista,但我不認爲這就是我需要的。我擔心我的問題不清楚,因此我重寫了它。我會在今晚試驗你的建議,但我很確定那不是我需要的。 –

相關問題