0

我有 rails 应用程序,sass 少,宝石多。

我尝试查找覆盖image_tag的位置以调试为什么它不将指纹哈希添加到 url。

我已经完成rails assets:precompile并且带有哈希指纹的文件存在于公共目录中。问题出在我这样配置(如在生产中)的生产和开发中:

config.assets.compile = true
config.assets.digest = true

我试图在项目文件夹中搜索和~/.gem/gems-除了实际定义的位置()之外没有任何结果。~/.gem/bundler/gems/def image_tag:image_tagactionview-5.0.7.2/lib/action_view/helpers/asset_tag_helper.rb

我试图从image_tagat打印一些asset_tag_helper.rb- 没有任何输出,但是 at asset_pathinasset_url_helper.rb输出存在,​​但没有处理任何图像文件。

同时image_tag工作正常并使用诸如此类的选项生成正确的标签:size。但不包含哈希指纹

4

1 回答 1

0

第一个问题解决了。这是一个path-first 参数image_tag。当路径从/(like /img.png) 开始时 - 这意味着 url 不检查资产是否存在并且不使用摘要进行修改。当路径不是从/(如img.png)开始时,将检查资产并添加摘要。

第二个问题没有解决。无法找到实际image_tag函数的定义位置以及覆盖位置和方式。

于 2020-04-18T17:04:43.887 回答