Comment faire pour afficher un Rails de flash avis lors de la redirection?
J'ai le code suivant dans un Rails de contrôleur:
flash.now[:notice] = 'Successfully checked in'
redirect_to check_in_path
Puis dans l' /check_in vue:
<p id="notice"><%= notice %></p>
Toutefois, l'avis ne s'affichent pas. Fonctionne parfaitement si je n'ai pas de redirection dans le contrôleur:
flash.now[:notice] = 'Successfully checked in'
render action: 'check_in'
J'ai besoin d'une redirection mais... pas seulement un rendu de cette action. Puis-je avoir un flash avis après la redirection?
Vous devez vous connecter pour publier un commentaire.
Supprimer le ".maintenant". Donc, il suffit d'écrire:
L' .maintenant est précisément censé être utilisé lorsque vous êtes juste de rendu et non pas d'une redirection. Lors de la redirection, l' .maintenant n'est pas utilisé.
en place de
:alert
vous pouvez utiliser:notice
pour afficher
Ou vous pouvez le faire en une seule ligne.
Ce sera trop de travail
redirect_to check_in_path, notice: 'Successfully checked in'
Si vous êtes en utilisant Bootstrap, cela permet d'afficher un bien-flash formatés message sur la page de la cible de la redirection.
Dans votre contrôleur:
De votre point de vue:
Cela permettra de produire du HTML comme:
Disponibles Bootstrap alerte de styles, voir: http://getbootstrap.com/docs/4.0/components/alerts/
Référence: https://agilewarrior.wordpress.com/2014/04/26/how-to-add-a-flash-message-to-your-rails-page/
J'ai eu le même problème, et votre question résolu le mien, parce que j'avais oublié d'inclure dans le /check_in vue:
Dans le contrôleur, juste une seule ligne:
<%= notice %>
balise, juste rien a été à venir