我有一个Rails应用程序,最初是3.0.x应用程序,最近升级到3.2.2。图像位于app / assets / images / ecommerce / new中,当我在本地运行rake assets:precompile
时,它们不会复制到public / assets /。但是,当我将app / assets / images / ecommerce / new中的所有图像文件复制到根映像资产路径(即app / assets / imagens)并再次运行rake任务时,图像全部发送到公共/资产
当我在生产模式下本地运行服务器时,它找不到图像,但是当我部署到Engine Yard时,它确实如此。这很奇怪,你知道发生了什么吗?
资产管道不能处理app / assets / images子目录中的图像吗?我错过了什么吗?
以下是config / environments / production.rb的来源,关于资产管道的内容:
MyApp::Application.configure do
# Settings specified here will take precedence over those in config/application.rb
config.cache_classes = true
# Disable Rails's static asset server (Apache or nginx will already do this)
config.serve_static_assets = false
# Compress JavaScripts and CSS
config.assets.compress = true
# Don't fallback to assets pipeline if a precompiled asset is missed
config.assets.compile = true
config.assets.precompile += %w[*.png *.jpg *.jpeg *.gif]
# Generate digests for assets URLs
config.assets.digest = true
答案 0 :(得分:2)
config.assets.compile = true是问题所在。这不符合你的想法。这实际上告诉服务器按需编译。这可能解释了为什么你有时会看到这些文件,有时你却看不到。
如果要添加目录,请将它们添加到config.assets.paths。