【问题标题】:Why do my images have numbers appended to their names?为什么我的图片名称后附有数字?
【发布时间】:2014-11-25 13:52:17
【问题描述】:

我的图像位于assets/images/logo.png,我可以将它与 Ruby/HAML 的图像标签一起使用。但是,在创建 HTML 页面时,<img src='/assets/logo.png'> 找不到图像。当我转到 HAML 创建的页面并使用 Inspect Element 时,我发现图像实际上位于 /assets/logo-<a bunch of numbers>.png 下,如果我将它用于我的 HTML 页面,它工作正常。但是,这个数字在开发和生产中是不同的。那个号码是多少?我应该在其他 HTML 页面中使用什么作为图像源?

【问题讨论】:

  • 你不应该使用haml语法来创建你的图像吗?这样,无论您在哪个环境中,它都会整理出该数字 - see this

标签: html ruby-on-rails image haml


【解决方案1】:

这被称为 rails 中资产的指纹。考虑阅读指南:http://guides.rubyonrails.org/asset_pipeline.html#what-is-fingerprinting-and-why-should-i-care-questionmark

这用于防止缓存问题:当您更新资产但保留旧名称时,浏览器可能仍会显示旧的缓存图像。但是指纹名称会有所不同,并且始终会传递新图像。

您应该始终使用 haml/erb 资产助手 _asset_path 'logo.png'_ 语法来引用代码中的资产,因此 rails 会处理这些指纹。

【讨论】:

    猜你喜欢
    • 2013-08-30
    • 2021-04-22
    • 2021-06-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-03
    • 2021-10-23
    • 2014-12-16
    相关资源
    最近更新 更多