Comment valider la présence d'un champ ou d'un autre mais pas des deux et d'au moins un?
ruby-on-rails
Ben Orozco
la source
la source
Je pense que c'est plus idiomatique dans Rails 3+:
Exemple: pour valider que l'un des éléments
user_name
ouemail
est présentla source
Vous pouvez même le faire avec 3 valeurs ou plus:
la source
Exemple de rails 3.
la source
# Le nom du père ou le nom de la mère est obligatoire
Essayez ci-dessus un exemple simple.
la source
Je mets ma réponse à cette question ci-dessous. Dans cet exemple,
:description
il:keywords
y a des champs dont l'un d'entre eux n'est pas vide:la source
La validation utilisant un Proc ou un Symbole avec: si et: sauf sera appelée juste avant que la validation ne se produise.
Donc, la présence d'un des deux champs peut être comme ceci:
Le code (exemple d'extrait de code) a
:if
ou:unless
comme dernier élément, mais comme déclaré dans le document, il sera appelé juste avant la validation - donc une autre vérification fonctionnera après, si la condition correspond.la source