在轨道上工作时,图像不可见并出错。
Started GET "/assets/home.png" for 127.0.0.1 at 2012-06-19 12:23:24 +0530
Served asset /home.png - 404 Not Found (24ms)
ActionController::RoutingError (No route matches [GET] "/assets/home.png"):
我使用了命令
rake assets:precompile
production.rb
config.assets.compress = true
config.assets.compile = false
application.rb中
config.assets.enabled = true
config.assets.version = '1.0'
感谢您的帮助!
答案 0 :(得分:8)
实际上,您无法使用/assets/home.png
路径引用您的图片。
它将在开发模式下工作,但在生产中,所有资产的文件名都有指纹(请阅读http://guides.rubyonrails.org/asset_pipeline.html#what-is-fingerprinting-and-why-should-i-care-questionmark)
这就是为什么在启用资产管道的应用程序中,您需要使用辅助方法引用所有资产。阅读本文档,了解Ruby,JS和Sass文件中可用的不同帮助程序:http://guides.rubyonrails.org/asset_pipeline.html#coding-links-to-assets
答案 1 :(得分:4)
文件请求中缺少指纹表明您正在开发中运行此指纹。我也猜测这是一个从较旧版本的Rails升级的应用程序。
任何图片都需要位于文件夹/ assets / images中才能使管道正常工作。
此外,在开发模式下,您无需预编译。
删除public / assets文件夹,删除文件夹tmp / cache / assets,然后重新启动服务器。
如果此图像位于正确的位置,则应该可以正常工作。