我正在使用Rails 5.2.0并已部署到Heroku。我使用以下调用加载图像:
...link_to image_tag("/assets/avatar.png", class: "img-responsive")...
在我的本地计算机上正确加载。
目录结构是:
my_project
app
| assets
| | images
| | | avatar.png
然而,在Heroku上,图像未加载。我已经检查了其他帖子,但不确定是否需要修改我的Gemfile / production.rb等。我也尝试将Heroku上的路径更改为
...link_to image_tag("app/assets/avatar.png", class: "img-responsive")...
将/app
添加到路径中,但这也无效。
我的问题是我需要更改路径,以便Heroku可以找到图像。如果是这样,路径需要是什么? Heroku从Rails应用程序运行时“开始”路径到哪里去了?
或者还有什么需要做的才能让Heroku找到并加载这些图像吗?
答案 0 :(得分:5)
如下所示
<%= link_to image_tag("avatar.png", class: "img-responsive"), url_path %>
查看image_tag
有关image_tag的工作原理。
将production.rb
个文件config.assets.compile
false
更新为true
# config/environments/production.rb
...
config.assets.compile = true
...