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