如何强制rake资产:预编译为生产RefineryCMS生成单独的JS文件?

我正在使用RefineryCMS,在管理部分我需要包含一个JS文件。 为此,您必须设置配置值

config.register_javascript "bootstrap.modal" 

http://antonivanopoulos.com/refinerycms-admin_restyle-a-gem-to-make-refinery-cms-a-little-prettier/

它在开发中有效。 当我预编译资产以进行生产时,RefineryCMS管理页面会出现404错误,因为bootstrap.modal-7bc4667810e04a7a7ccf02099c81a882.js在公共/资产中不存在。 相反,它嵌入在Refinery管理员不使用的application.js中。

Refinery将为该文件插入单独的JS标记:

  

该文件作为应用程序资产存在,但不会被指纹识别为其自己的文件。

 $ ls app/assets/javascripts/bootstrap.modal.js app/assets/javascripts/bootstrap.modal.js $ rake assets:precompile ... $ ls public/assets/boot* ls: cannot access public/assets/boot*: No such file or directory 

我不能只包含application.js,因为还有很多东西会破坏管理页面的显示。

我阅读了整个资产管道指南但没有发现任何有用的东西

http://guides.rubyonrails.org/asset_pipeline.html

Rails 3.2.14。

我发现我可以将单个文件添加到要编译的资源列表中,这样我就可以在生产中获得这些额外的文件。

production.rb:

 config.assets.precompile += %w( bootstrap.modal.js bootstrap.modal.css blog_post_form.js ) # This is for Refinery Admin /config/initializers/refinery/core.rb