Verwendung von cleaned_data für Formulare in django

8

Was ist der Einstellpunkt von cd = form.cleaned_data, bevor die Eingabewerte einer POST / GET-Übergabe übergeben werden? Was ist der Sinn und warum ist es notwendig (wenn es so ist)?

    
David542 08.05.2011, 02:40
quelle

2 Antworten

20

Es ist nicht notwendig, das .cleaned_data-Attribut eines Formulars zu verwenden, bevor die Eingabewerte übergeben werden. Es wird ein Attributfehler ausgelöst, wenn Sie es vor dem Aufruf von .is_valid () in gebundener Form aufrufen oder wenn Sie versuchen, auf es zuzugreifen nicht gebundenes Formular, lesen Sie mehr über Form.cleaned_data .

Außerdem ist es in der Regel eine gute Idee, die Verwendung der Daten des Formulars in einer Formularmethode zu abstrahieren, um Logik zu kapseln

In Ihren Ansichten ist die traditionelle Art, wie Sie Formulare verwenden sollten, wie folgt:

%Vor%

in Ihrer Form:

%Vor%     
Jj. 08.05.2011, 08:32
quelle
1
  

Sobald is_valid () True zurückgibt, können Sie die sichere Übermittlung des Formulars in dem Wissen bearbeiten, dass es den Validierungsregeln entspricht, die in Ihrem Formular definiert sind. Während Sie direkt an dieser Stelle auf request.POST zugreifen können, ist es besser auf form.cleaned_data zuzugreifen. Diese Daten wurden nicht nur validiert, sondern auch für Sie in die relevanten Python-Typen konvertiert.

Verarbeitung der Daten aus einem Formular

    
solartic 08.05.2011 03:08
quelle

Tags und Links