2017-08-25 20 views
0

これは以前投稿した質問と似ていますが、私は別の状況があります。私はモデルに添付されたフォームを持つモデルを持っています。私はnullの制約を取得していますが、nullのフィールドはありませんので、制約が失敗してはいけません。私はこの制約がどこから来ているのか分からない...誰かが私がそれを見ていない場合に役立つことができるか?NOT NULL制約に失敗しました - django

models.py

dob_month = models.IntegerField(default=0) 
dob_day = models.IntegerField(default=0) 
dob_year = models.IntegerField(default=0) 

views.pyセクション

dob_month = form.cleaned_data.get("dob_month") 
dob_day = form.cleaned_data.get("dob_day") 
dob_year = form.cleaned_data.get("dob_year") 

new_profile = Profile.objects.create(
       user = currentUser, 
       first_name = first_name, 
       last_name = last_name, 
       dob_month = dob_month, 
       dob_day = dob_day, 
       dob_year = dob_year, 
       city = city, 
       state = state, 
       phone = phone, 
       privacy = privacy, 
) 

フォームPOSTリクエストここ

dob_month : '6' 
dob_day : '14' 
dob_year : '2019' 

まで来ている正確なエラーがある...

IntegrityError at /setup_profile/ 
NOT NULL constraint failed: tab_profile.dob_day 
Request Method: POST 
Request URL: http://127.0.0.1:8000/setup_profile/ 
Django Version: 1.8.6 
Exception Type: IntegrityError 
Exception Value:  
NOT NULL constraint failed: tab_profile.dob_day 

はここ

がforms.pyセクション...

class ProfileForm(forms.ModelForm): 
    split_choices = (('1', 'public'), 
        ('2', 'private')) 
    privacy = forms.TypedChoiceField(
     choices=split_choices, widget=forms.RadioSelect, coerce=int 
    ) 
    dob = forms.DateField(widget=extras.SelectDateWidget) 
    class Meta: 
     model = Profile 
     fields = ['first_name', 'last_name', 'dob', 'city', 'state', 'phone', 'privacy'] 

答えて

1

である私はそれを願っています、これを試してみてください問題は、数値フィールドに起因する文字列の挿入に

を発生していると思いますUPDATEDエラー

new_profile = Profile.objects.create(
       user = currentUser, 
       first_name = first_name, 
       last_name = last_name, 
       dob_month = int(dob_month), 
       dob_day = int(dob_day), 
       dob_year = int(dob_year), 
       city = city, 
       state = state, 
       phone = phone, 
       privacy = privacy, 
) 
+0

私はあなたが言ったを試してみましたが、私はまだ同じエラーを取得していますを解決する...それを修正する方法がわから... @Exprator –

+0

ない私は追加していますファイルのフォームを送信すると、ポストの更新されたセクションが表示されます。それは.... @Exprator –

関連する問題