7
ModelFormに余分なフィールドを追加します。それは簡単なようだが、私は次のエラーを取得する:Django:モデルフォームにフィールドを追加します
Django Version: 1.4 pre-alpha SVN-16573
Exception Type: TypeError
Exception Value:
argument of type 'NoneType' is not iterable
Exception Location: /usr/local/lib/django-trunk/django/forms/models.py in construct_instance, line 39
Python Executable: /usr/bin/python
Python Version: 2.6.6
は、これはコードです:
class NodeForm(forms.ModelForm):
password2 = forms.CharField(max_length=20, required=True, widget=forms.PasswordInput())
class Meta:
model = Node
def __init__(self, *args, **kwargs):
super(NodeForm, self).__init__(*args, **kwargs)
# css classes for fields
for v in self.fields:
self.fields[v].widget.attrs['class'] = 'text ui-widget-content ui-corner-all'
def clean(self):
''' Calls parent clean() and performs additional validation for the password field '''
super(NodeForm, self).clean()
password = self.cleaned_data.get('password')
password2 = self.cleaned_data.get('password2')
# password and password2 must be the same
if password != password2:
raise forms.ValidationError('I due campi password non corrispondono.')
私はそれを修正することができませんでした。私は間違って何をしていますか?
あなたがある here 文書としてclean
方法からデータをきれいにして返さなければなら
あなたがトランク(1.4)からのDjangoを使っているが、あなたはジャンゴでフルスタックトレース(エラーの行を追加することができます: '場合f.editableまたはisinstance(f、models.AutoField)でないか、またはcleaned_data'のf.name'ではありません) – christophe31