繁体   English   中英

django完整性错误

[英]django Integrity Error

我有一个不寻常的案例。 在我的models.py中,我有一个Event元素,以及两个不同类型的用户元素,它们如下所示引用它。

class User(models.Model):

     attending = models.ManyToManyField('Event', related_name='User_attending')
     hosting = models.ForeignKey('Event', related_name='User_hosting')

     username = models.CharField(max_length=40)


class Event(models.Model):
     #event title
     title = models.CharField(max_length=200)
     #time created
     created = models.DateField('Date Created',auto_now_add=True)

在我的views.py中,当我想创建用户时,我有以下一些内容:

    user = User()
    user.username = ""
    user.gender = 0
    user.fName = ""
    user.lName = ""
    ....
    user.save

这是我的浏览器对我大吼大叫说:

完整性错误,list_user.hosting_id可能不是NULL

在没有创建Event元素的情况下解决这个问题的任何想法?

您似乎想要创建User而不提供hosting值。 您可以通过向blank=True, null=True添加blank=True, null=True来执行此操作:

hosting = models.ForeignKey('Event', related_name='User_hosting',
                            blank=True, null=True)

您还需要添加迁移来修复数据库(因为数据库需要允许空字段)。 我建议将South用于此目的。

你对你的关系充满了热情; 他们应该在Event ,指向User

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM