我正在尝试为Google Feed Feed生成xml文件。在xml文件中,我想显示产品图像的链接。代码
image_tag("image.png")
在我看来可以在浏览器中显示图像。但是我需要获得资产的链接。运行后
rake assets:precompile
rails 5在我的公共文件夹中生成assets文件夹,并使用哈希重命名该图像。所以去mydomain.com/assets/image.png并不起作用但是去mydomain.com/assets/imagewithhash.png确实有效。
我尝试过使用
image_path("image.png")
获取散列图像名称,但这不起作用。返回
/assets/image.png
而不是
/assets/imagewithhash.png
这就是我需要的。有人可以帮忙解决这个问题吗?
提前致谢!
答案 0 :(得分:2)
你可以使用
asset_url('my_image.png', type: :image)
或image_url('my_image.png')
获取资产的哈希网址。
如果它没有在资产之后给你哈希,那么Rails没有找到那个资产。您的字符串中有拼写错误或资产不存在。
image_url('my_iamge.png')
会链接到localhost:3000/assets/my_iamge.png
如果您仍未获得预期的编译资产,请仔细检查。