预编译后Rails javascript资产丢失

时间:2012-04-18 22:03:00

标签: javascript ruby-on-rails file assets pipeline

Rails Guides说:

  

如果生产中缺少预编译文件,您将获得   链轮::助手:: RailsHelper :: AssetPaths :: AssetNotPrecompiledError   异常,指示丢失文件的名称。

我执行:

bundle exec rake assets:precompile

但是我没有收到任何错误,并且 manifest.yml 中缺少我的javascript文件。它也没有出现在 public / assets 中,因此问题仅出在生产上。

我在 application.js

//= require formalize/jquery-formalize

我错过了什么?

感谢。

2 个答案:

答案 0 :(得分:17)

实际上需要做两件事:

config.assets.precompile += %w( *.js *.css )

here

所述
config.serve_static_assets = true

使用

进行本地生产测试
rail s

当然使用

rake assets:precompile

然而在我的情况下 - 如果没有config.assets.precompile,这将没有任何效果,因为清单不包含对我的javascript文件的任何引用。

HTH。

答案 1 :(得分:5)

尝试:

rake assets:precompile

我遇到过类似的问题而且有效。 您也可以删除/public/assets目录的内容并尝试再次运行。