Django模型如何在删除时取消=模型.级联

2024-10-01 00:14:49 发布

您现在位置:Python中文网/ 问答频道 /正文

尝试将一个字段从cascade迁移到“non-cascade”似乎被忽略了(django1.10)。在

以前的型号:

class Run(models.Model):
    ...
    analysis_retention = models.ForeignKey('analysis_retention.AnalysisRetention',
                                           null=True, default=None, on_delete=models.CASCADE)

新型号:

^{pr2}$

““管理.pymakemigrations“不会检测到更改。 尝试一个明确的“无”也无济于事。在

消除级联的方法是什么?在

谢谢


Tags: runnonetruedefaultmodelmodelsanalysisnull
1条回答
网友
1楼 · 发布于 2024-10-01 00:14:49

CASCADEon_delete参数的默认值,请参见source。因此删除on_delete=models.CASCADE将不会产生效果。您需要在代码中指定on_delete值:

analysis_retention = models.ForeignKey('analysis_retention.AnalysisRetention',
                                       null=True, default=None, on_delete=models.SET_NULL)

相关问题 更多 >