这可能是一个愚蠢的问题,但它困扰了我很多(我对django和python都很陌生)
在我的django应用程序中,我重写了模型的save()方法,以便在文件系统上执行一些交互。在
我创建了这样一个表单类:
class AddItemForm(ModelForm):
class Meta:
model = OriginalModel
所以,在我看来窗体保存(),一切正常。在
但是,在测试我的应用程序时,我希望能够调用原始的save()方法,以避免创建大量我不会使用和必须处理的文件。在
我试图创建一个savebis()方法,以便保留原来的save()方法,但是如何将它传递给ModelForm,以便调用窗体保存()或表.savebis()? 在
编辑:savebis()已经在我的模型中编写并运行。我希望能够从modelform实例调用它,但我不知道如何做到这一点。在
根据您的问题,我觉得您有一些可选的处理应该在
Model
的save方法中发生。按照问题注释中的建议,只需将TESTING = True
类型常量添加到测试期间使用的settings.py
文件中,并在Model
save
方法中检查此值:如果您继续重写
ModelForm
save
方法,那么您必须复制ModelForm
save
方法的现有功能,并将其更改为调用模型的savebis()
方法,而不是save()
方法。我建议不要走这条路,因为这会使代码比需要的更复杂。在相关问题 更多 >
编程相关推荐