我有以下型号:
from __future__ import unicode_literals
from django.db import models
from cms.models import Item
from django.contrib.auth.models import User
class Cart(models.Model):
owner = models.ForeignKey(User, on_delete=models.CASCADE)
items = models.ManyToManyField('cms.Item')
我尝试用两种不同的方式构造这种类型的对象。方法1:
cart = Cart(owner=request.user)
cart.save()
方法2:
cart = Cart()
cart.owner = request.user
cart.save()
第一种方式有效,第二种方法生成NOT NULL约束失败错误。为什么会这样?
答案 0 :(得分:0)
这是因为他拥有的Django模型构造函数检查字段并且看到所有者字段不是空字段而不是空白。他希望这个领域不是空白,因为他错了。但是构造函数在调用中没有价值,并且他在这个字段上放置了null,但这是错误的。他提出错误。 对不起我的语言不好。