Bedingt Benötigen Nur Ein Feld In Django Modell Form
Sowieso um ein Feld bedingt erforderlich, basierend auf, ob oder nicht ein anderes Feld im selben Formular ausgefüllt?
If field1 has no data, but field2 does
form is valid.
If field1 has no data and field2 has no data
form is invalid
Nicht auf der Suche nach einer javascript-Lösungen. Ich fühle mich wie es sollte gelöst werden mit django Formen, aber nicht ganz sicher, wie am besten, um darüber zu gehen.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Überschreiben .sauber(selbst) - Methode, prüfen Sie für sich selbst.cleaned_data und raise ValidationError
https://docs.djangoproject.com/en/dev/ref/forms/validation/#cleaning-and-validating-fields-that-depend-on-each-other
Können Sie auch dies tun, indem Sie das Modell, wenn Sie wissen, die Validierung für alle Objekte dieser Klasse. Verwenden Sie die unten auf der Ebene, verwenden Sie cleaned_data. Hier ist ein Beispiel direkt aus der Django-Dokumentation mit
ValidationError
:Referenz: Model-Instanz Sauber, Django Prüfungen
Hier ist ein Formen Beispiel:
Referenz: Form & Feld-Validierung
Die beste Lösung für bedingt erforderliches Feld zu überschreiben clean-Methode der form-und pop-up-Fehler auf Zustand. Zum Beispiel: