我在我的一个模型上重写保存方法:
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]
但是,我只想在创建post时运行set_coords()
一次,在更新模型时不应该运行此函数。
我怎样才能做到这一点?有没有办法检测模型是否正在创建或更新?
2条答案
按热度按时间zzoitvuj1#
y4ekin9u2#
我认为正确的方法是使用post_保存信号: