Добавить изображение в макет в ruby ​​на рельсах - PullRequest
63 голосов
/ 29 ноября 2009

Я хотел бы добавить изображение в свой шаблон для моего проекта ruby ​​on rails, где у меня постоянно есть код <img src="../../../public/images/rss.jpg" alt="rss feed" /> в файле макета stores.html.erb, но это не похоже на загрузку, так как похоже на его отсутствие маршрут, по которому я не уверен, каким он должен быть.

Есть идеи, пожалуйста?

Ответы [ 6 ]

129 голосов
/ 29 ноября 2009

Все, что находится в папке public, доступно по корневому пути (/), поэтому измените тег img на:

<img src="/images/rss.jpg" alt="rss feed" />

Если вы хотите использовать тег rails, используйте это:

<%= image_tag("rss.jpg", :alt => "rss feed") %>
12 голосов
/ 29 ноября 2009

В проекте Ruby on Rails по умолчанию корнем исходного HTML-кода для сервера является общедоступный каталог. Таким образом, ваша ссылка будет:

<img src="images/rss.jpg" alt="rss feed" />

Но в проекте Rails рекомендуется использовать встроенный помощник:

<%= image_tag("rss.jpg", :alt => "rss feed") %>

Это создаст правильную ссылку на изображение, плюс, если вы когда-нибудь добавите серверы утверждений и т. Д., Он будет работать с ними.

5 голосов
/ 23 января 2013

При использовании нового ruby ​​папка с изображениями перейдет в папку активов в папке приложения

после размещения изображений в папке изображений, используйте

<%=image_tag("example_image.png", alt: "Example Image")%>
2 голосов
/ 28 марта 2016

просто используйте помощник тега img. Rails знает, как искать в папке images в конвейере ресурсов, вы можете использовать это так

<%= image_tag "image.jpg" %>
1 голос
/ 23 февраля 2017

у меня работает:

<%= image_tag( root_url + "images/rss.jpg", size: "50x50", :alt => "rss feed") -%>

0 голосов
/ 24 ноября 2017

image_tag - лучший способ сделать работу, друг

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...