27-10-2011, 09:30 PM
(Modification du message : 27-10-2011, 09:31 PM par Sephi-Chan.)
Pourquoi ne pas plutôt avoir une colonne city_id dans ton modèle plutôt qu'une chaîne de caractère (par définition moins fiable) ?
Le validateur validates_inclusion_of est plus approprié pour les petites listes (homme/femme, true/false, rouge/vert/bleu, etc.). Là je pense que le plus efficace serait une validation manuelle.
En plus ça utilisera le même message d'erreur que si la validation foirait avec un validates_inclusion_of.
Le validateur validates_inclusion_of est plus approprié pour les petites listes (homme/femme, true/false, rouge/vert/bleu, etc.). Là je pense que le plus efficace serait une validation manuelle.
class User < ActiveRecord::Base
belongs_to :city
validate :city_exists
def city_exists
errors[:city_id] = :inclusion unless City.exists?(city_id)
end
end
En plus ça utilisera le même message d'erreur que si la validation foirait avec un validates_inclusion_of.