gpt4 book ai didi

python - on_delete = models.PROTECT和on_delete = models.CASCADE对Django模型有什么作用?

转载 作者:行者123 更新时间:2023-12-04 16:50:38 24 4
gpt4 key购买 nike

我对Django非常熟悉,但是最近发现模型中存在on_delete=models.CASCADEon_delete=models.PROTECT选项,


on_delete=models.CASCADEon_delete=models.PROTECT都在做相同的事情。
或两者都相同(我使用了唯一的on_delete=models.CASCADE,当我删除父条目时,它将删除所有相关条目)

我已经搜索了相同的文档,但找不到以下内容:



Django 2.0

多对一关系。需要两个位置参数:
与模型相关的类和on_delete选项。
要创建递归关系(一个与自身具有多对一关系的对象),请使用models.ForeignKey('self',
on_delete = models.CASCADE)。

最佳答案

CASCADE
级联删除。 Django模拟了
SQL constraint ON DELETE CASCADE并删除对象
包含ForeignKey
PROTECT
防止raising删除引用的对象
ProtectedErrordjango.db.IntegrityError的子类。


这些东西会被删除,因为一旦您更改了模型,就需要执行makemigrationsmigrate来查看更改。

关于python - on_delete = models.PROTECT和on_delete = models.CASCADE对Django模型有什么作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50502537/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com