Ruby on rails 让Sprocket rails像在rails 3中那样自动编译供应商和库中的资产

Ruby on rails 让Sprocket rails像在rails 3中那样自动编译供应商和库中的资产,ruby-on-rails,asset-pipeline,sprockets,ruby-on-rails-4,Ruby On Rails,Asset Pipeline,Sprockets,Ruby On Rails 4,Sprocket rails已经从rails中移出,现在是它自己的gem,不再自动从gems各自的供应商和lib文件夹中获取资产。这意味着您必须将gems供应商和lib文件夹中的每个文件添加到application.js、application.css,或者将图像/字体的每个文件添加到config.assets.precompile 如何恢复默认行为并使其与rails 3中的行为相同?在您的环境文件中放置以下内容以恢复旧的默认行为 config.assets.precompile += [Pr

Sprocket rails已经从rails中移出,现在是它自己的gem,不再自动从gems各自的供应商和lib文件夹中获取资产。这意味着您必须将gems供应商和lib文件夹中的每个文件添加到application.js、application.css,或者将图像/字体的每个文件添加到config.assets.precompile


如何恢复默认行为并使其与rails 3中的行为相同?

在您的环境文件中放置以下内容以恢复旧的默认行为

config.assets.precompile += [Proc.new { |path| !%w(.js .css).include?(File.extname(path)) }]
这是直接从旧代码中提取的

在当前版本的sprockets rails setting config.assets中发布此内容时,如果任何内容被破坏,gem将尝试在加载之前获取环境。但是,如果您自己对其进行修补,或者同时使用链轮和链轮轨道的修补版本,这将起作用

链轮轨道

链轮

在您的环境文件中放置以下内容以恢复旧的默认行为

config.assets.precompile += [Proc.new { |path| !%w(.js .css).include?(File.extname(path)) }]
这是直接从旧代码中提取的

在当前版本的sprockets rails setting config.assets中发布此内容时,如果任何内容被破坏,gem将尝试在加载之前获取环境。但是,如果您自己对其进行修补,或者同时使用链轮和链轮轨道的修补版本,这将起作用

链轮轨道

链轮

这在application.rb中对我有效

config.assets.precompile += %w(*.png *.jpg *.jpeg *.gif)

这在application.rb中适用于我

config.assets.precompile += %w(*.png *.jpg *.jpeg *.gif)