gpt4 book ai didi

django - 模型上的自定义保存方法 - django

转载 作者:行者123 更新时间:2023-12-04 02:38:52 28 4
gpt4 key购买 nike

我在我的模型之一上覆盖了 save 方法:

def save(self, *args, **kwargs):
self.set_coords()
super(Post, self).save(*args, **kwargs)

def __unicode__(self):
return self.address

# set coordinates
def set_coords(self):
toFind = self.address + ', ' + self.city + ', ' + \
self.province + ', ' + self.postal

(place, location) = g.geocode(toFind)

self.lat = location[0]
self.lng = location[1]

但是,我只想运行 set_coords()一次,在创建帖子时。更新模型时不应运行此函数。

我怎样才能做到这一点?有没有办法检测模型是否正在创建或更新?

最佳答案

def save(self, *args, **kwargs):
if not self.pk:
self.set_coords()
super(Post, self).save(*args, **kwargs)

关于django - 模型上的自定义保存方法 - django,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11456913/

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