2014-10-19 90 views
9

我在公用文件夹中有一些图像,我在我的控制器中获得了url /public/link/to/image.jpg。我想在我的视图中显示它,所以我将URL传递给视图。在公用文件夹中显示静态图像(导轨4)

但是我怎样才能在网页上显示它?

我通过帖子搜索,其中大多数与存储在资产文件夹中的照片有关, 这些可以通过<%= image_tag image-url (filename) %>查看。

那么我怎么能在公共文件夹中显示图像?

回答

16

我只是在我的应用程序之一测试了这一点,添加图像到公用文件夹,并能使其在视图使用:

<img src="/your_image_file_name.png">

我从未做过它通过公用文件夹之前,但如果我不得不猜测我会说你不需要文件路径的“/ public”部分。

如果我理解这个问题,那应该这样做 - 希望能有所帮助。

+0

我的情况有点复杂,我需要使用Rails的IMAGE_TAG而而不是我的应用程序中的普通HTML标记,但删除文件路径的“/ public”部分也适用于image_tag。 – Taylor714 2015-09-26 16:05:55

4

您还可以通过<%= image_tag("/path/to/file.jpg") %>

出于安全原因使用Rails的方式,image_tag只能往里/public,所以您不必在路径指定/public - 它会被自动添加。

备注 - 尝试总是存储在子文件夹图像/public因为它(IMAGE_TAG)如果省略/public将无法​​正常工作和简单的图像文件名传递给image_tag,像<%= IMAGE_TAG(“filename.jpg”) %> < - 在这种情况下,它会去搜索/assets/images文件夹。

解决方案在行动:

  1. enter image description here

  2. enter image description here

3

您可以使用:

<%= image_tag('/link/to/image.jpg') %> 

如果你的形象是public目录,并链接/到/子目录

如果是在根公用文件夹:

<%= image_tag('/image.jpg') %>