Rails a introduit une nouvelle façon de valider les attributs à l'intérieur du modèle. Quand j'utilise
validates :title, :presence => true
ça marche mais quand j'essaye d'ajouter un message personnalisé
validates :title, :presence => true,:message => "Story title is required"
une erreur est générée
Unknown validator: 'message'
ruby-on-rails
ruby
ruby-on-rails-3
validation
activerecord
Prabesh Shrestha
la source
la source
=> true
passé cette réponse? N'est-ce pas nécessaire?presence
.:base
, par exempleerrors.add(:base, "Story title is required)
En fait, je l'ai fait d'une meilleure manière. Si vous souhaitez supprimer le titre du champ du message, vous devez l'utiliser sur votre vue _form.htmk.erb:
Comme vous pouvez le voir dans cette vue:
Remplacez-le par:
la source
Un message personnalisé pour un booléen avec des conditions peut être:
la source
Vous pouvez utiliser HUMANIZED_ATTRIBUTES des rails 3. Par exemple dans le cas ci-dessus, ce sera comme:
Il vous donnera un message d'erreur, remplaçant le titre de l'attribut du modèle par l'histoire.
la source