Rails 诡异!明明编译了 js,为什么还会报没有编译?

suupic · 2012年04月14日 · 最后由 suupic 回复于 2012年04月14日 · 3023 次阅读

生产环境一个页面出现 500 错误,日志显示是引用的 js 没有编译 但我确实使用了 bundle exec rake assets:precompile 日志里记录了编译过的 js 文件 在浏览器里查看 application.js,md5.js 的代码确实也在其中,why? 折腾一晚上无解,快被玩死了,help...

Compiled common.js  (152ms)  (pid 12700)
Compiled slider.js  (10ms)  (pid 12700)
** Compiled md5.js  (0ms)  (pid 12700) **
Compiled application.js  (416ms)  (pid 12700)
Compiled bootstrap_and_overrides.css  (826ms)  (pid 12700)
Compiled favorites.css  (37ms)  (pid 12700)
Compiled welcome.css  (5ms)  (pid 12700)
Compiled colorbox.css  (0ms)  (pid 12700)
Compiled application.css  (964ms)  (pid 12700)

Started GET "/register/wizard" for 127.0.0.1 at 2012-04-14 23:18:48 +0800
Processing by WizardController#index as HTML
  Rendered wizard/index.html.erb within layouts/fullscreen (73.8ms)
Completed 500 Internal Server Error in 220ms

ActionView::Template::Error (md5.js isn't precompiled):
    31:         <a href="#" class="button again">搞定</a>
    32:     </div>
    33: </div>
    34: <%= javascript_include_tag "md5" %>
    35: <%= javascript_include_tag "slider" %>

搞定,原来是这个配置的问题

Precompile additional assets (application.js, application.css, and all non-JS/CSS are already added)

config.assets.precompile += %w( application_bottom.js )

需要 登录 后方可回复, 如果你还没有账号请 注册新账号