2012-01-11 169 views
1

我試圖將Rails 3.1應用程序轉換爲使用資產管道。目前使用Rails 3.2.0.rc2。我將ENV['RAILS_RELATIVE_URL_ROOT']設置爲application.rb中的suburi。助手工作正常,生成正確的路徑(包括suburi)到文件,但是Rails路由不會從該路徑提供文件。Rails 3.1資產管道與子項

例如,<%= stylesheet_link_tag 'screen', :media => 'screen' %>正確生成代碼<link href="/my-suburi/assets/screen.css" media="screen" rel="stylesheet" type="text/css" />,但是Rails將不會提供任何此地址以外的任何內容。

如果我手動指向我的瀏覽器http://localhost:3000/my-suburi/assets/screen.css我得到一個ActionController :: RoutingError。但是,如果我將它指向http://localhost:3000/assets/screen.css,我會得到該文件。其他的一切都可以正常使用。

任何人有任何想法可能會失蹤?謝謝。

回答

0

自己想出來。在application.rb,我說...

config.assets.prefix = "/my-suburi" 

,然後重新啓動服務器。這改變了標題中的路徑爲"/my-suburi/screen.css"(注意缺少「資產」),但我確認它現在正確地從/ app/assets/stylesheets文件夾中拉出。