Comment changer l'erreur de rails par défaut div "field_with_errors"
Je suis en utilisant la sorcellerie pour l'authentification avec twitter bootstrap.
Je voudrais à mon style de messages d'erreur sur mon formulaire d'inscription dans le style de twitter bootstrap en changeant la valeur par défaut rails <div class="field_with_errors">
qui est ajouté au DOM.
Ce qui est de la convention rails pour faire quelque chose comme ça?
Je suppose que vous pourriez ajouter un peu de javascript qui manipule le DOM pour renommer <div class="field_with_errors">
mais c'est un hack. Il semble qu'il devrait y avoir un moyen de remplacer ce dans les rails, mais je ne vois pas où le faire.
C'est de cette façon bootstrap nécessite que vous marquez votre erreur d'utiliser ses construit en forme les styles d'erreur:
<div class="control-group error">
<label class="control-label" for="inputError">Input with error</label>
<div class="controls">
<input type="text" id="inputError">
<span class="help-inline">Please correct the error</span>
</div>
</div>
source d'informationauteur Lee McAlilly
Vous devez vous connecter pour publier un commentaire.
À partir du lien ci-dessus, si vous mettez le texte suivant à l'intérieur
class Application < Rails::Application
deconfig/application.rb
Vos balises input aura un marqueur rouge autour d'eux à chaque fois que la validation échoue
Pour Bootstrap 3.2 vous pouvez utiliser les géohelminthiases. comme ceci (ajouter
nokogiri
joyau à votre Gemfile):Placer ce code à l'intérieur de
config/initializers/field_error_proc.rb
fichier (en créer un si n'existe pas)C'est légèrement modifié le code à partir de: Primordial ActionView::Base.field_error_proc dans les Rails
Twitter Bootstrap 3.3.6 sur Rails 5, cela va dans un initialiseur
customize_error.rb
et fonctionne pour moi:Notez que si vous utilisez SimpleForm, l'on a accepté la réponse de à l'aide d'une Proc en application.rb ne fonctionne pas. Au lieu de cela, vous devez éditer le simple_form initialiseur. Par exemple en utilisant Bootstrap 3.2: