Hey ... Comment valideriez-vous un champ complet_Name (nom de famille)? P>
3 Réponses :
Toute validation que vous effectuez ici est susceptible de décomposer sauf si elle est extrêmement générale. Par exemple, l'application d'une longueur minimale de 3 est probablement aussi raisonnable que vous pouvez obtenir sans entrer dans les spécificités de ce qui est entré. P>
Lorsque vous avez des noms comme "O'Malley" avec une Apostrophe, "Smith-Johnson" avec un tiret "Andrés" avec des personnages accentués ou des noms extrêmement courts tels que "VOY" avec pratiquement aucun personnage, comment Validez-vous sans exclure les cas légitimes? Ce n'est pas facile. P>
au lieu de valider les caractères présents, vous pouvez simplement vous assurer que certains caractères sont pas em> présent. p> Par exemple: h3 >
NODE EXPLANATION
--------------------------------------------------------------------------------
\A the beginning of the string
--------------------------------------------------------------------------------
[^`!@#\$%\^&*+_=\d]+ any character except: '`', '!', '@', '#',
'\$', '%', '\^', '&', '*', '+', '_', '=',
digits (0-9) (1 or more times (matching
the most amount possible))
--------------------------------------------------------------------------------
\z the end of the string
J'ai trouvé ce problème sur Rails 4.0.1 L'expression régulière fournie utilise des ancrages multilignes (^ ou $), ce qui peut présenter un risque de sécurité. Voulez-vous utiliser \ a et \ z, ou oublié d'ajouter la: MULLINE => VRAI Option? Mais il a été résolu avec l'ajout: multiline => true validateate_format_of: nom,: avec => / ^ [^ 0-9`! @ # \ $% \ ^ & * + _ = \] + $ /,: Multiligne => vrai code>
@ Barek2k2, je devrais utiliser \ a code> et
\ z code> ici. Merci pour le commentaire.
Peu tard, gardez cependant à l'esprit que cette regex approuve le nom étant ------ code>
Considérez des locuteurs non anglais (noms en Cyrillic, etc.). C'est le bordel.
au moins un espace et au moins 4 caractères (y compris l'espace)
besoin d'un bon reg de reg de validate_format_of
Quelles sont les valeurs acceptables et que ne sont pas? À mon avis, vous pouvez vérifier que s'il ne devrait pas y avoir de caractères spéciaux tels que
# @% ... code>, des chiffres et devrait être au moins 1 espace.
Certaines personnes vont par un seul nom, alors même à la recherche d'un espace peut être problématique. Demandez-vous: Pourquoi I> Est-ce que je valonne un champ de nom? Quel problème essayez-vous de vous prévenir?