Rails image_tag在生产中生成错误的路径

时间:2016-04-05 21:35:35

标签: ruby-on-rails ruby-on-rails-4

我有一个使用image_tag来显示图片的Rails 4.2.0应用,例如:

= image_tag 'android_green_300_100px'

(它也使用苗条)

在开发模式下,会生成以下img标记:

<img src="/assets/android_green_300_100px-3c57292ef62b34ed33756c2057c8c7320c22ac7fc7061576b29a97d312d954b1.png">

效果很好。

使用capistrano部署到生产时,会生成具有适当名称的图像文件:

INFO -- : Writing 
/home/app/releases/20160405210757/public/assets/android_green_300_100px-
3c57292ef62b34ed33756c2057c8c7320c22ac7fc7061576b29a97d312d954b1.png

image_tag方法返回图片标记:

<img src="/images/android_green_300_100px">

这显然会返回404错误。

如果我手动访问正确的图片网址,它可以正常工作(图片就在那里)

有什么想法吗?非常感谢你!

2 个答案:

答案 0 :(得分:6)

非常确定您必须使用image_tag的文件扩展名才能在生产中使用:

= image_tag 'android_green_300_100px.png'

答案 1 :(得分:0)

将此行添加到production.rb:

config.assets.digest = true