背景图片未在我的视图页面中上传.显示此错误.
ActionController :: RoutingError(没有路由匹配[GET]"/assets/images/control_top.png")
我该怎么做才能解决这个问题?
Sac*_*n R 24
在生产环境中,Rails不负责提供静态资产.因此,您收到此错误.
这由应用程序中config/environment/production.rb中的此设置控制:
config.serve_static_assets = false
Run Code Online (Sandbox Code Playgroud)
你可以设置为真
或试试这个
rake assets:precompile
Run Code Online (Sandbox Code Playgroud)
命令(编译和复制图像,css和js从app/assets到public /.
Aar*_*ray 22
如果你升级到Rails的新版本(Rails 4和Rails 3.2.16),你突然开始看到这个错误,你的样式表可能指向非指纹,非缓存版本文件.如果您正在使用资产管道,为了利用它,您需要使用指向文档的指纹缓存版本的新助手.为此,您需要在您的css文件中嵌入erb,或者使用sass.
不正确(使用sass):
.class
background: url('asset.png') no-repeat
Run Code Online (Sandbox Code Playgroud)
正确(使用sass):
.class
background: image-url('asset.png') no-repeat
Run Code Online (Sandbox Code Playgroud)
有关详细信息,请参阅此处:http://guides.rubyonrails.org/asset_pipeline.html#coding-links-to-assets