我有以下模型:
class User(models.Model):
email = models.EmailField(max_length=254, null=False, unique=True)
referral_code = models.CharField(max_length=10, null=False, unique=True)
并使用 Django shell 来保存一个未定义 refer_code 的用户实例:
u = User(email="test@example.com")
u.save()
这没有引发异常。我的理解是 null=False 需要设置referral_code - 不是这样吗?我将如何实现这种行为?
更新
我注意到该字段设置为u.referral_code=''
,因此考虑到唯一性约束,当我尝试使用新实例重复该过程时,这引发了异常。我宁愿抛出异常,因为我没有设置字段......