如何显示rails本地项目文件夹中的图像?

Igg*_*ggy 6 ruby-on-rails image twitter-bootstrap

非常基本的问题,但不知何故我无法让它发挥作用。我试图让位于项目本地文件夹中的图像显示在 Rails 上。另外,我正在使用引导程序;class: "img-responsive"因此我也需要声明。这是原始代码:<img class="img-responsive" src="assets/img/mockup/img2.jpg" alt="">

我查阅了这篇建议的帖子<%= image_tag("xyz.png", class: "img-responsive img-thumbnail img-circle") %>和建议的ruby​​onrails 指南image_tag("/icons/icon.gif", class: "menu_icon")

我努力了

<%= image_tag ("assets/img/mockup/img2.jpg", class: "img-responsive")%>
Run Code Online (Sandbox Code Playgroud)

<%= image_tag "assets/img/mockup/img2.jpg" %>
Run Code Online (Sandbox Code Playgroud)

但它仍然不起作用。我可以确认路径是:app/assets/img/mockup/img2.jpg

如何在 Rails 应用程序视图上显示上述图像?

ney*_*oid 5

您有两个选择:

1)将img文件夹内容移至app/assets/images并引用图像,如下所示:

<%= image_tag ("mockup/img2.jpg", class: "img-responsive")%>
Run Code Online (Sandbox Code Playgroud)

2)将您的img文件夹添加到文件中的Rails资产路径搜索中config/application.rb

config.assets.paths << Rails.root.join("app", "assets", "img")
Run Code Online (Sandbox Code Playgroud)

发生这种情况是因为app/assets/img/默认情况下不包含在 Rails 资产搜索路径中。

有关更多信息,请查看http://guides.rubyonrails.org/asset_pipeline.html#asset-organization


Igg*_*ggy 5

我正在浏览并看到这个帖子。我能够使用它来工作

<%= image_tag ("/assets/mockup/img2.jpg"), class: "img-responsive"%>
Run Code Online (Sandbox Code Playgroud)

图像路径为assets/images/mockup/img2.jpgimages从图像路径中省略assets/mockup/img2.jpg可以解决该问题。