【发布时间】:2016-03-30 00:40:55
【问题描述】:
我正在尝试用 django 制作一些表单。
我做了一些模型:
class Identity(models.Model):
[...]
class Move(models.Model):
identity = models.OneToOneField(Identity, blank=True)
[...]
还有一个观点:
def firstform(request):
forms = {}
if request.method == "POST":
forms["move_form"] = MoveForm(request.POST)
forms["identity_form"] = IdentityForm(request.POST)
if all((forms["move_form"].is_valid(),
forms["identity_form"].is_valid())):
forms["identity_form"].save()
forms["move_form"].identity = forms["identity_form"]
forms["move_form"].save()
return HttpResponse("OK")
else:
forms["move_form"] = MoveForm()
forms["identity_form"] = IdentityForm()
return (render(request, "main/devis.html", forms))
但是,当我尝试提交表单时,我收到了 django.db.utils.IntegrityError: NOT NULL constraint failed: main_move.identity_id。
我该如何解决这个问题?
【问题讨论】:
-
我在您的代码中的任何地方都没有看到
main_move——也许您可以发布出现此错误的更新代码? -
@gorus main 是应用的名称,移动类的名称,estimate_query 一个字段的名称:我弄错了两个字段,我的错!问题不在于身份字段。 编辑 没关系,我更正了有关估计查询的问题,并且在身份方面遇到了同样的错误。 (我编辑了帖子)
标签: django python-3.x django-forms