在 Heroku 上的 Ruby on Rails 4.1 资产管道中发现了一个奇怪的错误。我所有的 PNG 图像都没有被编译。
开发中:
image_tag('icons/example.png')
# => "/assets/icons/example-09adfasdfa7sfhpasodfuahsdas.png"
在 Heroku 上生产
image_tag('icons/example.png')
# => "/images/icons/example.png"
我从来没有在资产管道中遇到过这样的事情。关于为什么的任何想法?
更新
事实证明,它不是特别是 PNG 图像。它是通过 访问的任何图像image_tag
。任何在 CSS 和 Javascript 中预编译的图像都指向正确的路径,但任何使用image_tag
(因此path_to_image
)的视图/帮助程序都指向/images
. 我不知道这是否与serve_static_assets
Heroku 推荐的配置与 Rails 4.1 不兼容有关