当你在Django中删除了一个有着外键关联的数据时,比如一个作者和他名下的所有的书的信息,书的外键是作者(一个作者可有好多本书),当你把作者的信息从数据库中删除时,Django提供了一下几个参数来对作者的书的数据进行操作

外键的定义:

1 #models.py
2 class Author(models.Model):
3     name = models.CharField(max_length=128)
4 
5 class Books(models.Model): 
6     name = models.CharField(max_length=128)
7     author = models.ForeignKey("Author", on_delete=models.CASCADE)

 

* CASCADE:删除作者信息一并删除作者名下的所有书的信息;
* PROTECT:删除作者的信息时,采取保护机制,抛出错误:即不删除Books的内容;
* SET_NULL:只有当null=True才将关联的内容置空;
* SET_DEFAULT:设置为默认值;
* SET( ):括号里可以是函数,设置为自己定义的东西;
* DO_NOTHING:字面的意思,啥也不干,你删除你的干我毛线关系

相关文章:

  • 2023-03-23
  • 2021-09-05
  • 2022-01-02
  • 2022-12-23
  • 2022-02-24
  • 2021-11-27
猜你喜欢
  • 2022-12-23
  • 2021-11-06
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-02-27
  • 2021-12-02
相关资源
相似解决方案