2017-11-21 10 views
2

両方のフィールドがオプションのフォームを作成しようとしていますが、nullblankを設定するとエラーが発生します。私は間違って何をしていますか?nullと空白のフィールドを持つdjangoフォームを作成する

エラー

super(CharField, self).__init__(*args, **kwargs) 
TypeError: __init__() got an unexpected keyword argument 'blank' 

forms.py

class EditProfile(forms.Form): 
    """ 
    A form that lets a user change their profile information 
    """ 
     first_name = forms.CharField(
     label=("Fornavn"), 
     strip=False, 
     blank=True, 
     null=True 
    ) 
    last_name = forms.CharField(
     label=("Efternavn"), 
     strip=False, 
     blank=True, 
     null=True, 
    ) 
    def __init__(self, user, *args, **kwargs): 
     self.user = user 
     super().__init__(*args, **kwargs) 

    def save(self, commit=True): 
     first_name = self.cleaned_data["first_name"] 
     last_name = self.cleaned_data["last_name"] 
     self.user.first_name = first_name 
     self.user.last_name = last_name 
     if commit: 
      self.user.save() 
     return self.user 
+2

フォームフィールドの引数にモデルフィールドの引数を混在させています。あなたのフォームフィールドに 'required = false'('空白 'と' null'の代わりに)が必要になるでしょう。 – danielcorreia

答えて

1

を、使用代わりに「偽=必要」。

0

CharField cunstructorは、引数としてblankを取るdosent。 blanknullフィールドの代わりにrequired = Falseを使用する必要があります。 defaylt requiredTrueです。あなたのコードの作業書き込みを行うには:@danielcorreiaは、フォームに「空白」を使用していないと述べたよう

first_name = forms.CharField(label=("Fornavn"), strip=False, required=False)

関連する問題