【发布时间】:2014-03-14 03:05:37
【问题描述】:
似乎现在在使用资产管道和 sprocket-rails gem 的 Rails 4 中,当处理图像时,它们的文件名会附加一个 md5 指纹,如 css 和 javascript。虽然这是有道理的,因为md5 fingerprints are awesome,它使得从 javascript 访问该图像变得越来越困难。在 rails 3.2 中,我可以使用 /assets/image_name.jpg 访问图像并且它可以正常使用,但是在 rails 4 中该资产不存在,它只存在于名称中的 md5 指纹。
我知道 rails 提供了通过 erb <%= asset-url("image_name.jpg") %> 访问图像的助手,但这在 javascript 中不太理想,因为我没有在我的 js 中使用 erb。有很多方法可以通过视图中提供的数据属性或在我的视图中使用脚本标签并设置一些全局变量来破解此问题,但我正在寻找解决此问题的好方法(如果存在)。
感谢您的帮助。
【问题讨论】:
标签: ruby-on-rails-4 asset-pipeline sprockets