从这个问题我得到了在我的 Django 模型中覆盖 deepycopy 的想法。我从那个问题中提取了代码片段,并将其放入我的模型中,并带有以下签名:
def __deepcopy__(self, *args, **kwargs):
但是我也希望能够传递“字段”和“值”参数,但这不起作用。当我调用时:
deepcopy(s1, field='foo',value='bar')
尝试使用 kwargs['field'] 和 kwargs['value'] 从方法主体中提取参数时,出现以下错误:
File "<stdin>", line 1, in <module>
TypeError: deepcopy() got an unexpected keyword argument 'field'
顺便说一句,我假设我必须导入 deepcopy 方法才能使用它,我正在这样做:
from copy import deepcopy
这里我的理解有一些错误,提前感谢解释。