第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

Django TypeError:字段“id”需要一個(gè)數(shù)字

Django TypeError:字段“id”需要一個(gè)數(shù)字

守著星空守著你 2023-10-31 14:39:54
我一直在嘗試允許員工用戶將作業(yè)發(fā)布到數(shù)據(jù)庫,但是我不斷遇到上述問題。我嘗試過設(shè)置data['id'] = 0/''以及刪除表和 makemigrations/migrate。models.pyfrom django.db import modelsfrom teachers.models import Teacherclass Homework(models.Model):  title = models.CharField(max_length=100)  descripiton = models.CharField(max_length=500)  due = models.DateField()  teacher = models.OneToOneField(      Teacher, null=True, blank=True, on_delete=models.CASCADE)  def __str__(self):    return self.titleform.pyfrom django import formsclass DateInput(forms.DateInput):    input_type = 'date'class HomeworkForm(forms.Form):    title = forms.CharField(label='Title', max_length=100)    descripiton = forms.CharField(label='Descripiton', max_length=500)    due = forms.DateField(label='Due', widget=DateInput)views.pydef homework(request):    if request.user.is_authenticated & request.user.is_staff:        if request.method == 'POST':            data = request.POST.copy()            data['teacher'] = request.user.username            request.POST = data            print(request.POST)            form = HomeworkForm(request.POST)            if form.is_valid():                post = Homework(form)                post.save()                messages.info(request, 'Form sent')                print('worked')                return render(request, 'index/index.html')            else:                print('error in form')                form = HomeworkForm()                return render(request, 'dashboard/setHomework.html', {'form': form})        else:            form = HomeworkForm()            return render(request, 'dashboard/setHomework.html', {'form': form})    else:        return redirect('index')
查看完整描述

3 回答

?
墨色風(fēng)雨

TA貢獻(xiàn)1853條經(jīng)驗(yàn) 獲得超6個(gè)贊

您是否嘗試使用 data['teacher'] = request.user 而不是 data['teacher'] = request.user.username ?



查看完整回答
反對 回復(fù) 2023-10-31
?
翻閱古今

TA貢獻(xiàn)1780條經(jīng)驗(yàn) 獲得超5個(gè)贊

你不需要使用request.POST.copy(),request.POST已經(jīng)是一本字典了。



查看完整回答
反對 回復(fù) 2023-10-31
?
SMILET

TA貢獻(xiàn)1796條經(jīng)驗(yàn) 獲得超4個(gè)贊

我很欣賞這些答案。我設(shè)法通過將表單轉(zhuǎn)換為模型表單來解決這個(gè)問題,因?yàn)樵摫韱文P透m合這種情況,因?yàn)槟P妥侄沃苯佑成涞捷斎搿?/p>


新形式.py


from homework.models import Homework

from django import forms


class HomeworkForm(forms.ModelForm):

    class Meta:

        model = Homework

        fields = ['title', 'description', 'due']

        widgets = {

            'due': forms.DateInput(format=('%m/%d/%Y'), attrs={'label': 'due date', 'type': 'date'}),

        }


查看完整回答
反對 回復(fù) 2023-10-31
  • 3 回答
  • 0 關(guān)注
  • 230 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號