Comment convertir le <img src= > image_tag en application rails
Ceci est mon premier post ici et il pourrait sembler terriblement stupide. Im la construction de ma première application rails.
J'ai cette ligne dans mon index.html.erb
<img src="/assets/rand_front/<%= @random_image%>", style='height:50vw;width:100vw;margin-bottom:20px;' >
Je veux utiliser image_tag
au lieu de la img src
Quelle est la bonne manière à l'envelopper autour du code?
Jusqu'à présent, j'ai essayé <%= image_tag ( "/assets/rand_front/<%= @random_image%>", style='height:50vw;width:100vw;margin-bottom:20px;') %>
et
<%= image_tag ( "/assets/rand_front/<%= @random_image%>"), style='height:50vw;width:100vw;margin-bottom:20px;' %>
et de nombreuses autres versions, mais aucune ne semble fonctionner, ce que je fais mal? et comment dois-je l'écrire correctement?
ce <%= @random_image%>
bits est de prendre cette variable à partir de la index
méthode dans le contrôleur.
def index
@products = Product.all.order(created_at: :desc).group_by(&:category_id)
@images = ["1.jpg", "2.jpg", "3.jpg", "4.jpg", "5.jpg", "6.jpg", "7.jpg", "8.jpg", "9.jpg", "10.jpg"]
@random_no = rand(10)
@random_image = @images[@random_no]
end
@random_image = "#{rand(1..10)}.jpg"
ou si ce sont juste des espaces réservés – @random_image = @images.sample
OriginalL'auteur Slowboy | 2016-09-28
Vous devez vous connecter pour publier un commentaire.
image_tag
ajoutera automatiquementassets
au début du cheminvérifier Balise Image pour la Documentation
OriginalL'auteur Qaisar Nadeem
C'est ce que Ruby on Rails est explicitement traitement
(ce qui signifie que Ruby vous permet d'utiliser ce code avec le ( { } ),
Pour moi, débutant, il est important de savoir que ce est la façon dont Ruby on Rails en fait de l'exécution du code.
En d'autres mots, OUI, vous pouvez laisser le ( { } ) formalité parce que Ruby permettra de comprendre votre code, de l'espérance qui nous aide à clarifier certains...
OriginalL'auteur jso1919
Si je ne me trompe pas, vous avez un
rand_front
dossier dans votre dossier des actifs, de sorte que vous devez appelerimage_tag("#{@random_image}")
puisque par défaut leimage_tag
aide doit vérifier tous les dossiers dans le répertoire actif pour le nom de l'imagePour les propriétés CSS vous pouvez envisager d'utiliser le
options
de hachage qui vous permettrait de passer dans les propriétés CSS que les clés de vos valeursimage_tag("#{@random_image}", height: 20, width: 20)
Vous pouvez consulter la documentation dans la réponse précédenteOriginalL'auteur Black Enigma