Ank*_*itG 44 ruby-on-rails-4 ruby-on-rails-4.1
我刚刚迁移到我的Rails应用程序4.1.0从4.1.rc2.开始为我的JS文件获取这些错误
ActionView::Template::Error: Asset filtered out and will not be served: add `config.assets.precompile += %w( my_js )` to `config/application.rb` and restart your server
Run Code Online (Sandbox Code Playgroud)
Dan*_*hoe 50
响应来自Heroku的敦促,Rails维护者已将sprockets_better_errors gem中的健全性检查合并到Rails 4.1中.请参阅https://github.com/rails/sprockets-rails/pull/84
目的是揭示在开发模式下运行应用程序时在生产中看到的资产管道错误.
您可能javascript_include_tag在应用程序布局中使用a 而不是将JavaScript文件放在app/assets/javascripts /文件夹中.
您可以将文件移动到app/assets/javascripts /文件夹.
或者,您需要更新config/application.rb文件以包含:
config.assets.precompile += %w( my_js )
Run Code Online (Sandbox Code Playgroud)
请注意,文件名不应包含.js文件扩展名.
zmi*_*jko 32
如果您已经添加了类似于stylesheet_link_tag params[:controller]应用程序布局标题的内容,因为您在不同的控制器上有单独的JS应用程序但具有相同的基本布局,您会对此非常恼火.使用预编译的所有资产快速完成此操作并继续工作(但可能不是最终解决方案)的方法是将以下内容添加到/config/initializers/assets.rb:
Rails.application.config.assets.precompile += [/.*\.js/,/.*\.css/]
Run Code Online (Sandbox Code Playgroud)
请注意,这是因为它甚至对于.js.coffee和.css.scss,.js和.css是不够的.
理想情况下,@zmilojko 的解决方案有效,但我在这个应用程序中也有活跃的管理员。
Rails.application.config.assets.precompile += %w(*.svg *.eot *.woff *.ttf *.gif *.png *.ico)
Rails.application.config.assets.precompile << /\A(?!active_admin).*\.(js|css)\z/
Run Code Online (Sandbox Code Playgroud)
只需将上面的行添加到:/config/initializers/assets.rb
上面的代码在跳过活动管理文件的同时预编译资产。以便它们不会被处理两次或不按顺序处理导致错误。
| 归档时间: |
|
| 查看次数: |
26934 次 |
| 最近记录: |