L'ajout de code HTML pour ruby on rails message flash
J'ai un flash[:success]
message qui va comme ceci:
flash[:success] = "This text is now bold."
.
Cependant, lorsque je vais à rendre le texte en gras, c'est juste encapsule les caractères HTML à travers le message, plutôt que de tourner en gras.
<b>This text is now bold</b>
Comment puis-je aller sur le HTML dans les messages flash?
- où et comment avez-vous afficher?
Vous devez vous connecter pour publier un commentaire.
Utilisation
<%= flash[:success].html_safe %>
de votre point de vue.À chaque fois que votre
flash[:success]
est vide, il affichera l'erreur due à l'html_safe
. Il est donc préférable d'utiliser une condition.Donc, essayez avec celui-ci pour éviter cette erreur:
Vous pouvez également utiliser
.try
pour éviter cette erreur:Et si vous savez qu'il ya de contenu pour sûr, vous pouvez aussi essayer:
ERB spécifiques à l'affichage HTML
En plus de cela, puisque vous utilisez ERB, vous pouvez utiliser
h()
méthode pour HTML échappé à cordes:Découvrez ce tutoriel sur ERB pour d'autres options, telles que pour l'affichage JSON ou URL encodées.
<%= raw flash[:success] %>
(si vous connaissez le contenu est sûr)enregistrer le message en tant que
mettre dans le fichier html comme
Vous pouvez ajouter du code HTML arbitraire à votre message flash, mais vous aurez besoin de l'utilisateur
html_safe
rendre sans échappement.Dans la vue: