gpt4 book ai didi

python - 如何防止覆盖别人修改过的对象

转载 作者:太空宇宙 更新时间:2023-11-04 01:44:32 26 4
gpt4 key购买 nike

我想找到一种通用的方法来防止在我 check out 后保存对象。

我们可以假设该对象有一个包含最后修改时间的timestamp 字段。如果我在 t1 checkout (例如访问一个使用 ModelForm 的 View )并且对象在 t2 再次保存,给定 t2 > t1 我应该无法保存它。

最佳答案

覆盖将首先检查最后一个时间戳的保存方法:

def save(self):
if(self.id):
foo = Foo.objects.get(pk=self.id)
if(foo.timestamp > self.timestamp):
raise Exception, "trying to save outdated Foo"
super(Foo, self).save()

关于python - 如何防止覆盖别人修改过的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/467134/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com