django 如何创建表关系

1.分析表关系

2.创建基本表不含外键

3.根据关系,添加基表的外键

django ORM 多对多关系可以创建再任意一方模型,但是推荐建立在查询频率高的一方:

authors  = models.ManyToManyField(to="Author",on_delete=models.CASCADE) 

这个authors 是一个虚拟字段,ORM 会自动为你建立多对多的第三张表,
注:多对多外键字段不能修改级联关系, 默认是 on_delete=models.CASCADE,
to_field= 指定外键关联关联的字段,默认是关联到被关联表的主键

一对一和一对多关系时,注意这里1.x级联删除默认,2.x和3.x需要用户指定on_delete=
A表依赖B表, b记录删除,
    on_delete=models.CASCADE                    a记录也会被删除
    on_delete=models.DO_NOTHING                 a记录对应外键字段不受影响
    on_delete=models.SET_DEFAULT, default=1     a记录对应外键字段变为默认值
    on_delete=models.SET_NULL, null=True        a记录对应外键字段变为null
    注:多对多外键字段不能修改级联关系, 默认是 on_delete=models.CASCADE

 

 

 

 

  

posted @ 2020-10-11 23:47  不带R的墨菲特  阅读(185)  评论(0)    收藏  举报