75 votes

Ajouter une image à la mise en page dans ruby on rails

Je voudrais ajouter une image dans mon modèle pour mon projet ruby on rails où j'ai actuellement le code. <img src="../../../public/images/rss.jpg" alt="rss feed" /> dans une mise en page stores.html.erb mais celui-ci ne semble pas se charger car il semble qu'il manque une route dont je ne suis pas sûr qu'elle soit censée être.

Des idées, s'il vous plaît ?

145voto

Doug Neiner Points 34940

Tout ce qui se trouve dans le public est accessible à partir du chemin racine ( / ) donc changez votre balise img pour lire :

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

Si vous vouliez utiliser une balise rails, utilisez ceci :

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

14voto

scottd Points 4120

Dans un projet Ruby on Rails, par défaut, la racine de la source HTML pour le serveur est le répertoire public. Donc votre lien serait :

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

Mais la meilleure pratique dans un projet Rails est d'utiliser l'aide intégrée :

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

Cela créera le lien image correct et si vous ajoutez des serveurs d'assert, etc., cela fonctionnera avec eux.

6voto

Agung Kessawa Points 27

En utilisant le nouveau ruby, le dossier d'images ira dans le dossier asset du dossier app.

après avoir placé vos images dans le dossier image, utilisez

<%=image_tag("example_image.png", alt: "Example Image")%>

3voto

Il suffit d'utiliser l'aide de la balise img. Rails sait qu'il faut chercher dans le dossier des images dans le pipeline des ressources, vous pouvez l'utiliser comme suit

<%= image_tag "image.jpg" %>

1voto

Artem Baranov Points 256

Ça marche pour moi :

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

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X