Ruby on rails 无法通过rails中的image_标记显示图像

Ruby on rails 无法通过rails中的image_标记显示图像,ruby-on-rails,Ruby On Rails,我正在尝试制作一个非常简单的rails程序来显示图片,这是我的show.html.erb文件 <div class="row"> <div class="col m12"> <div class="card blue-grey darken-1"> <div class="card-content white-text"> <div class="row"> <div class="col m4 cent

我正在尝试制作一个非常简单的rails程序来显示图片,这是我的
show.html.erb
文件

<div class="row">  <div class="col m12">
<div class="card blue-grey darken-1">
  <div class="card-content white-text">
    <div class="row">
      <div class="col m4 center">
      <%= image_tag "courses/#{@course.image}" %>    
      </div>
      <div class="col m8">
      <span class="card-title"><%= @course.title %></span> 
      <p><%= @course.description %></p>         
    </div>
   </div>
  </div> </div></div></div>

例如,当我连接到
http://localhost:3000/courses/2
,它将显示图片2,但它给了我这个问题
资产“课程/图像”在资产管道中不存在。


我很困惑,我试图修复它,但无法。我是一个新手,还很笨,你能给我一些建议吗?多谢各位

您在不同方面需要的是:

  <%= image_tag "courses/1.png" %>
  <%= image_tag "courses/2.png" %>
  <%= image_tag "courses/3.png" %>
  <%= image_tag "courses/4.png" %>
第一个当然是标准方式。您的
@course.image
应该包含完整的路径
image\u标记
需要一个字符串,该字符串将作为路径和你的
@课程。image
应该拥有它,而不是你自己编写它的一部分。请记住,该文件扩展名是路径的“一部分”,因此不应忽略它

提示:您也可以在此标记中添加图像的大小。这非常有帮助:

  <%= image_tag @course.image, size: "100x100" %>


在这里查看文档中的2.2。我认为您需要为资产设置初始值设定项它在开发中工作而不是在生产中工作吗?图像是否位于应用程序/资产/图像/课程中?你使用的是哪个rails版本?@nathanvda:是的,图像位于
app/assets/images/courses
,我的rails版本是6.0.1错误显示
courses/image
,那么是否有一个名为
image
的图像?它至少应该以
jpg/png
结尾吗?@nathanvda在我的文件夹
app/assets/images/courses
中只有四个名为1 2 3 4的图像,当我将行
更改为此
时,它显示了图像1,但只有图像1。为了进一步了解,您可以随时从apidock了解更多信息:
  @course.image = n
  <%= image_tag "course/#{@course.image}.png" %>
  <%= image_tag @course.image, size: "100x100" %>