Django从窗体存储了一个多选字段,它说该字段不能是nu

2024-10-03 00:25:56 发布

您现在位置:Python中文网/ 问答频道 /正文

我的模板中嵌入了modelform\u factory表单,它有一个带有foreignkey的字段,它是一个multichoicefield小部件,当我单击它时,它会显示所有可用的选项,但名称相同(比如“modelname\u object”,我想这是因为我没有设置它们的unicode名称)。在我发布表单之后,dict在该字段中有一个值,比如[u'/1],或者有时是[u'/2],这取决于我选择的内容。当我存储错误出现时

(1048, "Column 'class_room_id' cannot be null") Request Method: POST

异常类型:完整性错误

这是密码

def test(request):
    studentFormSet = modelform_factory(Student, fields=("class_room",))
    return render(request,'form.html',{'studentForm': studentFormSet})

if request.POST:
    name = request.POST['student name']
    standard = request.POST['class_room']
    roll_no = request.POST['roll no.']
    shatra = Student()
    shatra.name = name
    shatra.standard = Class_room.objects.all().filter(pk=standard)
    shatra.roll_no = roll_no
    shatra.save()

Tags: noname名称表单requestfactory错误post
1条回答
网友
1楼 · 发布于 2024-10-03 00:25:56

从错误信息中,我可以推断出您的学生模型有一个教室外键。但是,创建shatra时不设置沙特拉教室,因此出现错误。你知道吗

无论如何,您应该阅读关于django表单和django模型表单的文档。你没有以正确的方式使用它们。。。你知道吗

相关问题 更多 >