没有出现在heroku的背景图像

Mik*_*aAK 14 css ruby-on-rails image sass heroku

我在本地使用的heroku网站的背景图片有问题

background-image: url('background_stripe.png');
Run Code Online (Sandbox Code Playgroud)

有效但部署时文件已损坏

网站

我试过用了

background-image: image-url('background_stripe.png');
background-image: url(image-url('background_stripe.png'));
background-image: url(image_url('background_stripe.png'));
Run Code Online (Sandbox Code Playgroud)

没有一个在本地或在heroku上工作.

使用bash我发现heroku已将图像文件命名为background_stripe.png,但它没有哈希值,而且它的图像已损坏

Mon*_*eep 49

在您的production.rb中添加以下行

config.serve_static_assets = true
config.assets.compile = true
Run Code Online (Sandbox Code Playgroud)

或者您可以尝试使用本地预编译资产

RAILS_ENV=production rake assets:precompile
Run Code Online (Sandbox Code Playgroud)

  • 更改production.rb的工作原理.谢谢,@深圳.看起来`config.serve_static_assets`将被弃用.`config.serve_static_files`应该用在它的位置. (7认同)

Jon*_*der 5

当您的资产被编译用于生产时,为了版本控制,它们会在其末尾添加"摘要".您应该使用asset_path('background_stripe.png'),如果你定义的类在你的意见或image-url('background_stripe.png')如果你在你的SCSS文件,中引用定义它们的文档.