IntegrityError: NOT NULL constraint failed: app_userprofile.email
该字段如下所示:
email = models.CharField(max_length=100, blank=True, default=None)
我不明白。创建模型实例而不设置电子邮件字段时发生错误。但它是空白的,它是charfield,如果没有被覆盖,则无,为什么会发生?
答案 0 :(得分:1)
As noted here,在charField和TextField中使用null = True应该避免。因为那时你的字段有两个选项没有数据。一个是None,另一个是空字符串。
顺便说一下,在django字段中,null默认设置为False,在你的情况下你应该将它设置为True。
答案 1 :(得分:1)
有两种选择:
null = True
,如果要在数据库中保存空值,则使用{。}。blank = True
,用于表单验证。您可以在该字段中调用没有值的保存表单。在当前版本中,您只需添加null = True
。
email = models.CharField(max_length=100, blank=True, null=True, default=None)