Der Vorteil der Arbeit mit benutzerdefinierten Feldern in den Formularen besteht darin, dass wir uns keine Gedanken über deren Kompatibilität mit mehreren Backends machen sollten, als ob wir uns Sorgen machen müssten, wenn wir einen neuen Feldtyp im Modell erstellen.
Benutzerdefinierte Felder
Ein benutzerdefiniertes Feld im Formular ermöglicht es uns, Unterstützung für Dateneingabetypen zu generieren, die in der Vielzahl der von Django angebotenen Optionen nicht vorhanden sind. Dadurch können wir personalisiertere Ergebnisse erzielen und unserer Anwendung dabei helfen, eine bessere Konformität zu erzielen unsere Ziele
Validierung
Dies ist möglicherweise der grundlegende Aspekt bei der Generierung neuer Felder, da wir bei der Definition eines Validierungstyps den Feldtyp festlegen können, da die Validierung diesem Feld den eindeutigen Charakter verleiht.
In der folgenden Abbildung sehen wir einen Code, in dem zwei neue Arten von benutzerdefinierten Feldern generiert werden:
Hier sehen wir, wie wir alles anwenden, worüber wir gesprochen haben. Zuerst importieren wir Felder in Django.forms, da es die Klasse ist, die wir verwenden müssen. Dann erstellen wir eine Klasse, die in diesem Fall von fields.DecimalField erbt verstanden, dass unser neues Feld numerisch sein wird.
Dann definieren wir einen Fehler mit dem Namen out_of_range . Dies ist nützlich, wenn wir beim Validieren der Daten eine Ausnahme auslösen , um eine Nachricht anzuzeigen , die den Benutzer anleitet. Dies gibt uns die Möglichkeit, verschiedene Arten von Nachrichten für verschiedene Fehler zu haben.
Schließlich bestätigen wir mit unseren Bedingungen, und wenn sie nicht erfüllt sind, werfen wir den Fehler auf; Daher haben wir bereits ein benutzerdefiniertes Feld erstellt.
Damit schließen wir das Tutorial mit einem zusätzlichen Tool ab, mit dem wir Anwendungen erstellen können, die unseren Anforderungen näher kommen.