我最近升级到Rails4,我在vendor文件夹中预编译图像资源时遇到问题。我知道默认情况下,vendor / assets文件夹已从编译中删除。
我将assets / assets / *文件夹添加到assets.precompile配置中,这会获得预编译的资产,但我的应用程序不会显示vendor / assets / images文件夹下的图像。看来该文件夹中的图像路径是在生产时呈现的,但是具有错误的哈希后缀。
config.assets.precompile += [ 'themes/*', 'jquery.fancybox.css', 'vendor/assets/*' ]
用于处理此问题的Rails4文档非常糟糕。我不希望将文件从供应商/资产移动到应用程序/资产,因为我希望将我的和外部文件分开。
我的问题是:如何在生产中修复供应商的供应商图像?
感谢您的帮助
答案 0 :(得分:6)
由于版本4 vendor
和lib
目录默认情况下未包含在资产管道中。如果您想在这些目录中预编译资产,则应扩展资产路径,如下所示:
(在您的application.rb
中):
config.assets.paths << Rails.root.join("vendor", "assets", "images")
答案 1 :(得分:0)
您是否尝试使用vendor/assets/**/*
?
config.assets.precompile += [ 'themes/*', 'jquery.fancybox.css', 'vendor/assets/**/*' ]