在我的application.css.scss
我引用了这样的图像:
body {
background: #7d9ec4 url(asset-path('background.png', image)) no-repeat fixed bottom center;
}
它位于app/assets/images/background.png
,它在开发中工作得很好。
我正在部署到Heroku,所以我需要预先编译资产。运行rake assets:precompile
后,public/assets/
出现了comiled文件,我的background.png获取了这个文件名:background-876262e736e0b48500313d1a48005396.png
(毫不奇怪,我知道这是指纹)。
令我感到困惑的是,已编译的application-7665539658a117373a79cd8568f36315.css
尝试加载/assets/background-61d37b9fc285589fc0016694e6f8d134.png
,这显然是错误的指纹。
所以我删除了public/assets/
中的所有文件并再次编译,将新文件添加到git(并删除旧文件),提交并推送到Heroku - 但没有运气:CSS仍然使用了错误的{{ 1}}。
有人知道如何解决这个问题吗?