我试图为一个ModelForm定义save()方法的两个不同版本,但唯一执行的是第二个版本。当我尝试save()时,我得到一个错误:save()至少接受3个参数,给定1个。你知道吗
[...]
def save(self,commit=True):
return super(NewProgramForm,self).save(commit=True)
def save(self, NameFile, SizeFile , commit=True):
inst = super(NewProgramForm, self).save(commit=False)
inst.size = SizeFile
inst.sketches_file = NameFile
inst.lines_of_code = 0
if commit: inst.save()
return inst
我很确定这个错误很小,但我不知道出了什么问题。。。 提前感谢您提供的任何有用的提示!你知道吗
定义具有相同名称但不同属性的多个方法称为方法重载,在Java等语言中很流行。这在Python中是不允许的-简单明了。你知道吗
您需要更改第二个
save
方法的名称,或者将这些方法合并成一个NameFile
和SizeFile
具有默认值的方法(使它们成为可选的)。你知道吗相关问题 更多 >
编程相关推荐