Betrachten Sie das folgende Stacktrace:Django Formen: nicht nennen form.clean
In [3]: f.clean()
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
C:\Users\Marcin\Documents\oneclickcos\lib\site-packages\django\core\management\commands\shell.pyc in <module>()
----> 1 f.clean()
C:\Users\Marcin\Documents\oneclickcos\oneclickcos\mainapp\incorporate_helpers.pyc in clean(self)
569 This checks the relations between fields, ensures consistent state, and exports bits about the state of the form that can be used in subsequent
validations
570 """
--> 571 cleaned_data = super(IncorporateForm, self).clean()
572 #logger.debug('IncorporationForm.cleaned_data: ' + str(cleaned_data))
573 try:
C:\Users\Marcin\Documents\oneclickcos\oneclickcos\mainapp\incorporate_helpers.pyc in clean(self)
402
403 def clean(self):
--> 404 cleaned_data = super(CreateForm, self).clean()
405 # trying to use an empty pk can result in a ValueError. Easier to expunge.
406 if cleaned_data.get('pk', None) == '': del cleaned_data['pk']
C:\Users\Marcin\Documents\oneclickcos\lib\site-packages\django\forms\forms.pyc in clean(self)
315 association with the field named '__all__'.
316 """
--> 317 return self.cleaned_data
318
319 def has_changed(self):
AttributeError: 'IncorporateForm' object has no attribute 'cleaned_data'
(Alle relevanten Code wird in der Spur siehe oben).
Mein Code entspricht den Beispielen unter https://docs.djangoproject.com/en/1.4/ref/forms/validation/#cleaning-and-validating-fields-that-depend-on-each-other; es scheint jedoch, dass BaseForm erwartet, dass cleaned_data
vorhanden ist.
Nirgendwo in der Dokumentation sehe ich, dass es in der Verantwortung des Benutzercodes ist, cleaned_data
vor dem Aufruf clean
zu erstellen. Was gibt? Ist das ein Fehler in Django?
Fehler erscheint mit Django 1.4 und 1.3.1.
Nun, das ist eine Erleichterung. – Marcin