Rails - Heroku图像找不到正确的路径

时间:2018-06-06 09:20:46

标签: ruby-on-rails image heroku path

我正在使用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找到并加载这些图像吗?

1 个答案:

答案 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
...