Python3-Django2-TypeError:__init __()缺少1个必需的位置参数:'on_delete'

时间:2019-12-11 11:10:22

标签: python django python-3.x django-2.0

我最近将我的项目从python2迁移到了python3,它具有数百个ForeignKey关系。

无法使用解决方案逐行添加on_delete参数。解决此错误的替代方法是什么?

我尝试编辑该库,在该库中可以使用默认值在init函数中添加参数,但有时看起来并不像是捕获该参数。

1 个答案:

答案 0 :(得分:2)

  

无法使用解决方案逐行添加on_delete参数

任何体面的代码编辑器都应使此操作相对容易,从长远来看,这仍然是唯一的明智的解决方案。

同时,您可以just monkeypatch models.ForeignKey.__init__而不是直接弄乱Django的源代码,只需确保在加载任何应用程序model.py之前应用了monkeypatch。但这必须被视为临时解决方法,而不是可行的解决方案。