rails 3.1 et concevoir 1.5 Question.
J'utilise le code suivant pour afficher les messages Flash dans ma mise en page: p> J'aimerais changer le Classe CSS pour certains de mes messages de confirmation de l'avis de réussite, mais je ne sais pas où remplacer ou modifier la clé parce que je ne sais pas où il est défini. P> Quelqu'un peut-il me dire à droite Direction? P> Merci! P> P>
3 Réponses :
La classe CSS est définie par l'argument : classe code>. Pour ajouter une classe d'avis
code> (ou
succès code>, etc.), veuillez simplement modifier votre appel dans les éléments suivants:
<%= content_tag(:div, message, :class => "flash #{key} notice") %>
Cela ajouterait une classe d'avis à chaque message flash, ce qui n'est pas ce qu'il veut.
Ainsi, la manière de le faire consiste à éditer les contrôleurs de congise.
Lorsque vous installez du congélation à travers l'installation normale, je ne pense pas qu'il installe les contrôleurs (au moins cela n'a pas pour moi). P >
Ainsi, vous devez d'abord ajouter manuellement les fichiers du contrôleur et les mettre dans votre projet au même endroit: https://github.com/plataformatec/devise/tree/master/app/controls/devise p>
Une fois que vous avez les fichiers de votre projet, allez à Fichier "Sessions_Controller.rb". P>
One Lines 16 et 25, vous devez voir le code: P>
set_flash_message :notice, :signed_out
Mon projet jette une erreur sur les lignes que j'ai changées. Y a-t-il autre chose que vous devez faire autre que vous devez mettre les fichiers dans un dossier appelé Devise dans le dossier Controluteurs?
J'ai couru dans ce problème car j'utilise le gem de la bande bootstrap-Sass qui utilise une structure de classe complète pour les messages Flash. J'ai pris la voie de résoudre ce problème plutôt que de jouer avec le tout (héritage Sass est génial :).
Donc, je rends les messages flash dans et, j'ajouterais une règle simple à app / affichage / mise en page / application / application.html.haml : p>
app / actif / styles-feltières / personnalisage.css.scss code> pour obtenir les messages flash de congise Travailler: P>
/* Style Devise Flash messages like Bootstrap */
.alert-alert {
@extend .alert-warning;
}
Vous pouvez modifier le texte de Devise Flash Messages en activant I18N et en modifiant les paramètres régionaux par défaut. Mais je ne pense pas que vous puissiez facilement changer si elles sont ajoutées comme un avis ou un succès ... github.com/plataformatec/devise/blob/master/config/locales/... . Une manière très sale serait d'ajouter HTML dans les messages et de modifier votre CSS pour le prendre en compte ...