image_tag为同一路径提供不同的结果

时间:2016-10-06 15:08:01

标签: ruby-on-rails ruby ruby-on-rails-5

基本上我有

= image_tag('procedure_icons/chemical/chemical.png')

给出了预期的结果,html

<img src="/assets/procedure_icons/chemical/chemical-7eee22622b56126c0339a1c340bd4708ca689031ea6448a132c5c004beb32e78.png" alt="Chemical">

但是当我尝试这样的事情时

= image_tag(object.icon_path)

其中icon_path是draper decorator方法

def icon_path
  "/procedure_icons/#{object.icon_type}/#{object.icon_type}.png"
end

生成的html不同

<img src="/procedure_icons/chemical/chemical.png" alt="Chemical">

任何人都能解释一下吗?

1 个答案:

答案 0 :(得分:0)

第一个image_tag正在传递'procedure_icons/chemical/chemical.png'资产管道可以识别,因此源是资产管道处理的图像。

第二个image_tag正在传递'/procedure_icons/chemical/chemical.png',这只是告诉我们使用传递给帮助程序的特定路径(注意前面的反斜杠)