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

use*_*231 2 ruby-on-rails image path heroku

我正在使用Rails 5.2.0并已部署到Heroku.我使用以下调用加载图像:

...link_to image_tag("/assets/avatar.png", class: "img-responsive")...

在我的本地机器上,他们正确加载.

目录结构是:

my_project
    app
    |    assets
    |    |   images
    |    |   |    avatar.png
Run Code Online (Sandbox Code Playgroud)

但是,在Heroku上,图像未加载.我已经检查了其他帖子,但不确定我是否需要修改我的Gemfile/production.rb等.我也尝试将Heroku上的路径更改为

...link_to image_tag("app/assets/avatar.png", class: "img-responsive")...

添加/app到路径但这也没有用.

我的问题是我需要改变路径,以便Heroku可以找到图像.如果是这样,路径需要是什么?Heroku从Rails应用程序运行时"开始"路径到哪里?

或者还有什么需要做的才能让Heroku找到并加载这些图像?

foo*_*dev 5

它将如下所示

<%= link_to image_tag("avatar.png", class: "img-responsive"), url_path %>
Run Code Online (Sandbox Code Playgroud)

看看image_tagimage_tag的工作原理.

production.rb文件更新config.assets.compile falsetrue

# config/environments/production.rb
...
config.assets.compile = true
...
Run Code Online (Sandbox Code Playgroud)