我在处理数据库时注意到了一些事情,尤其是处理数据库的 python ORM。
save()
以下是django中的函数示例:
def save(self, **kwargs):
self.somevar = dosomething(self.someothervar)
return super(<Your_Model_Here>, self).save()
同样在使用该功能的谷歌应用引擎中put()
:
def put(self, **kwargs):
self.<some_var> = doSomething(self.someOtherVar)
return super(<Entity>, self).save()
现在,我明白我们为什么要这样做,IIRC,我们这样做是因为我们没有手动编写put()
orsave()
函数,所以我们需要使用 super 调用才能正常运行。
有人可以给我一个更详细的解释为什么保存功能是这样的。save()
我对它的理解是错误的,因为我只是通过编写代码来学习的,但是当我编写一个orput()
函数时,我真的不(清楚地)理解发生了什么。