Nach meinen form.Form
die Benutzereingabewerte überprüft habe, übergebe ich sie zur weiteren Verarbeitung an einen separaten (externen) Prozess. Dieser externe Prozess kann möglicherweise weitere Fehler in den Werten finden.
Gibt es eine Möglichkeit, diese Fehler in das bereits validierte Formular einzufügen, damit sie über die üblichen Methoden zur Anzeige von Formularfehlern angezeigt werden können (oder gibt es bessere alternative Ansätze)?
Ein Vorschlag war, die externe Verarbeitung in die Formularvalidierung einzubeziehen, was nicht ideal ist, da der externe Prozess viel mehr als nur eine Validierung bewirkt.
quelle
_errors
ist trotz seines Namens Teil der öffentlichen Formular-API; Siehe Insins Antwort für einen Dokument-Link.Für Django 1.7+ sollten Sie verwenden,
form.add_error()
anstattform._errors
direkt zuzugreifen .Dokumentation: https://docs.djangoproject.com/de/stable/ref/forms/api/#django.forms.Form.add_error
quelle
Sie können dem
_errors
Attribut des Formulars direkt zusätzliche Fehlerdetails hinzufügen :https://docs.djangoproject.com/de/1.5/ref/forms/validation/#described-later https://docs.djangoproject.com/de/1.6/ref/forms/validation/#modifying-field-errors
quelle
add_error
Funktion hinzu: docs.djangoproject.com/de/dev/ref/forms/api/…Fehler zu einem bestimmten Feld hinzufügen:
** Fehler zu Nichtfeldern hinzufügen **
quelle