Ich möchte, dass ein Formular ungültig ist, ohne einen ValidationError in einer der sauberen Methoden des Formulars oder Formularfelds zu erhöhen. Der Grund dafür ist, dass die Form die "Superform" für eine Reihe von "Unterformen" ist, und ich möchte, dass das Superformular ungültig ist, wenn eines seiner Unterformulare ungültig ist. Aber diese Ungültigkeit führt nicht dazu, dass ein ValidationError im Super-Formular ausgelöst wird, und ich möchte in der Tat keinen ValidationError im Super-Formular auslösen, weil ich keine Fehlermeldung in den Fehlerlisten des Super-Formulars erscheinen lassen möchte eine Fehlermeldung in der Superform ist non_field_errors
ist meine Hauptmotivation hier.) Ein Weg um dies für mich wäre, sowohl die Super-Formular und seine Unterformen für is_valid
in der Ansicht zu überprüfen, aber ich bevorzuge, nur die Super-Form zu überprüfen und zu haben Sein is_valid
gibt False
zurück, auch wenn seine Felder gültig sind, aber wenn eines oder mehrere seiner Unterformulare False
an is_valid
zurückgibt. Vielen Dank.Formular ungültig machen, ohne ValidationError in Django zu starten
0
A
Antwort
1
Warum überschreiben Sie die is_valid-Methode nicht?
class SuperForm(forms.Form):
def is_valid(self):
return forms.Form.is_valid(self) and all(form.is_valid() for form in self.sub_forms)
Verwandte Themen
- 1. Test Django Formulare ausgelöst ValidationError
- 2. CRL-Cache ungültig machen
- 3. wie TextArea- machen wie Eingabe sieht [Text] auf Formular ungültig
- 4. Anfragedaten in Django-Formular erhalten
- 5. Netbeans kopierte Formular ungültig
- 6. NSTimer ungültig machen
- 7. Sitzungsfedersicherheit ungültig machen
- 8. Mandrill ValidationError
- 9. Django Modell Feld Validierung ohne ein benutzerdefiniertes Formular
- 10. Verwenden Sie Django-Summernote ohne Formular zu verwenden?
- 11. Ruby-Rails - Formular ist ungültig
- 12. ASP.NET - Browser Cache ungültig machen
- 13. ValidationError von der Speichermethode des Django-Modells ausgelöst?
- 14. Django Admin Fehler ValidationError: [u'ManagementForm Daten fehlen oder wurden manipuliert ']
- 15. Wie bestimmte Feld in Blackberry ungültig machen?
- 16. Django Formular bearbeiten basierend auf hinzufügen Formular?
- 17. Django ModelForm ValidationError wird nicht auf der Webseite angezeigt
- 18. Angular nicht ungültig Elternteil Formular, wenn Kindformular manuell gesetzt ungültig
- 19. Django Rest Framework: Einen einzelnen Teil eines multiserialisierten POST ungültig machen
- 20. Django Javascript Formular Validierung
- 21. Django - ManyToManyField wird in Formular
- 22. ohne Refresh in django
- 23. Formular nicht bindend in Django
- 24. Django - wie Dateieingaben ohne Verwendung von Django Formular zu erhalten und an die Datei anhängen
- 25. Machen Sie entweder x oder y Attribut in Formular erforderlich
- 26. Auslöser, um Cache nach Aktualisierung ungültig zu machen
- 27. Wie Sie ein TextField in der Material-UI ungültig machen
- 28. Android, Mediendatei im Player starten, ohne die Wiedergabe zu starten
- 29. Memcache Einträge nach einem Muster ungültig machen?
- 30. Old Session-Cookie ungültig machen - ASP.Net Identity
Ich denke, das ist die richtige Option. Ich war mir der 'all'-Funktion in Python nicht bewusst; Diese Funktion wird meinen Code an mehreren Stellen aufräumen, denke ich. Vielen Dank! –
Wolltest du 'forms.Form.is_valid (self)' nennen? Was ist mit 'super (SuperForm, self) .is_valid()'? –