Verstecktes Feld in Django Form nicht in cleaned_data

8

Ich habe dieses Formular:

%Vor%

In der Ansicht rufe ich einfach

an %Vor%

Ich bekomme den Fehler:

%Vor%

Laut Firebug ist der Wert der Beitrag, es scheint einfach nicht zu meiner sauberen Funktion zu gehören. Tue ich es falsch?

EDIT: Daten posten

%Vor%

EDIT2: Ich wäre auch bereit, eine Antwort zu nehmen, die mir sagen könnte, wie man den Primärschlüssel an die clean_user-Funktion sendet, wobei der Primärschlüssel das / 1 / in der obigen Beispiel-URL ist. Die Funktion in der aufgerufenen Ansicht lautet:

%Vor%

Also würde ich das pk an die clean_user-Funktion senden wollen, die mein Problem lösen würde, indem ich das versteckte Feld nicht brauche.

    
Samsquanch 30.11.2011, 15:49
quelle

3 Antworten

9

Sie müssen den Methodennamen in clean (), nicht clean_user () ändern. 'canvas' befindet sich nicht in den bereinigten_Daten, wenn Sie nur das Benutzerfeld validieren.

    
Chris Lacasse 30.11.2011, 16:12
quelle
0

Ich löste mein Problem (wahrscheinlich nicht der beste Weg, aber funktioniert) mit diesem:

%Vor%

Dann aus meiner Sicht:

%Vor%

Vielleicht nicht die eleganteste Lösung, aber es funktioniert für jetzt. Feedback willkommen.

    
Samsquanch 30.11.2011 16:13
quelle
0

Ich habe festgestellt, dass die Reihenfolge in der Deklaration von Feldern von Bedeutung ist. Wenn Sie also in der clean_user-Methode auf cleaned_data ['canvas'] zugreifen möchten, müssen Sie zuerst die Leinwand in Ihren Feldern deklarieren. Ich habe das in Modellformen getestet

    
felipemarin 08.04.2017 22:22
quelle