misc: extend custom error messages to all validation types (#63038) #216
Loading…
Reference in New Issue
No description provided.
Delete Branch "wip/63038-custom-error-messages"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
82bf8b723f
toc7d25a8f7c
c7d25a8f7c
to19f3784a2f
19f3784a2f
to9555fa8a3f
@ -1219,3 +1219,3 @@
value = {}
options = [(None, _('None'))] + [(x, y['title']) for x, y in self.validation_methods.items()]
options = [(None, _('None'), '')] + [(x, y['title'], x) for x, y in self.validation_methods.items()]
C'est ça qui fait les changements dans les tests type
et plus bas
@ -1264,3 +1266,1 @@
'data-dynamic-display-value-in': '|'.join(
[str(validation_labels.get('regex')), str(validation_labels.get('django'))]
),
'data-dynamic-display-value-in': '|'.join([x[2] for x in options if x[2]]),
Le code précédent était pour prendre les libellés des options regex et django, le nouveau code est pour prendre tous les identifiants de type de validation, vu qu'on veut désormais le champ de message perso pour tous les types de validation.
@ -1296,0 +1302,4 @@
r += htmltext(
'<script id="validation-error-messages" type="application/json">%s</script>'
% json.dumps(error_messages)
)
C'est équivalent au |json_script dispo en templatetag, c'est utilisé ensuite pour avoir tous les libellés disponibles dans le javascript.
@ -1321,3 +1330,1 @@
if validation['type'] == 'regex' and pattern:
return validation.get('error_message')
if validation['type'] == 'django' and validation.get('value'):
if validation.get('error_message'):
Il n'y avait vraiment pas de raison particulière à ne pas retourner le message personnalisé quand pattern n'était pas défini (en tout cas je n'ai rien trouvé qui aurait expliqué ça).
@ -353,0 +360,4 @@
error_message_widget.value = new_message || '';
}
}).trigger('change');
}
C'est encore un mix avec un peu de jquery, ça reste plus facile.
L'objectif ici est de remplir le champ "message personnalisé" avec le message par défaut, et tant que c'est un des messages par défaut, on peut le remplacer, sinon on laisse celui qui aurait été tapé/modifié par l'utilisateur.
WIP: misc: extend custom error messages to all validation types (#63038)to misc: extend custom error messages to all validation types (#63038)