1.在设置外键时,需要通过on_delete选项指明主表删除数据时,对于外键引用表数据如何处理,在django.db.models中包含了可选常量:
关联属性on_delete选项的取值
-
models.CASCADE
此为默认值,级联删除,会删除关联数据department = models.ForeignKey('Department', on_delete=models.CASCADE)
-
models.PROTECT
只要存在关联数据就不能删除department = models.ForeignKey('Department', on_delete=models.PROTECT)
-
models.SET_NULL
删除数据后关联字段设置为NULL,仅在该字段允许为null
时可用(null=True
)
2.如果关联的字段不在该应用文件夹的model.py中,那么要写成这样