我正在升级应用程序以使用 Rails 3.1,并且正在尝试使用资产管道。作为测试,我添加foobar.js
了app/assets/javascripts
.
设置
在application.rb
中,我添加了config.assets.enabled = true
. 继续本指南,我认为这就是我所要做的。
检查出来
如果我加载控制台并检查Rails.application.config.assets.paths
,我确实会app/assets/javascripts
在加载路径中看到。另外,如果我检查MyAppName::Application.assets
,我会返回一个Sprockets::Environment
具有相同路径的对象。
这一切对我来说都很好。
尝试使用它
在一个视图中,我正在使用javascript_include_tag('foobar')
. 输出以下 HTML:<script src="/javascripts/foobar.js" type="text/javascript"></script>
错误
按照那个链接给我一个错误:No route matches [GET] "/javascripts/foobar.js"
有没有我缺少的设置?
杂项详情
我目前正在使用:
- 红宝石-1.9.2-p290
- rails-3.1.0.rc6
- sprockets-2.0.0.beta.14(Rails 需要)