django外键级联更新怎么写
时间: 2023-06-07 13:10:58 浏览: 98
Django 实现外键去除自动添加的后缀‘_id’
你可以使用 Django 的 on_delete 属性来管理外键关系的级联更新。on_delete 属性可以设置为 CASCADE、SET_NULL、SET_DEFAULT等选项。例如,如果你想要在删除父模型的同时级联更新子模型,可以这样写:
```python
from django.db import models
class Parent(models.Model):
...
class Child(models.Model):
parent = models.ForeignKey(Parent, on_delete=models.CASCADE)
...
```
在上面的代码中,当你删除一个 Parent 实例时,与之相关的 Child 实例也会被自动删除。如果你想要子模型的外键设置为 NULL,可以这样写:
```python
class Child(models.Model):
parent = models.ForeignKey(Parent, on_delete=models.SET_NULL, null=True)
...
```
在上面的代码中,当你删除一个 Parent 实例时,与之相关的 Child 实例的 parent 外键会被设置为 NULL。
阅读全文