Tôi trọng các phương pháp tiết kiệm trên một trong những mô hình của tôi:tùy chỉnh phương pháp tiết kiệm trên mô hình - django
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]
Tuy nhiên, tôi chỉ muốn chạy set_coords()
một lần, khi bài đã được tạo ra. Chức năng này không nên chạy khi mô hình đang được cập nhật.
Tôi làm cách nào để thực hiện việc này? Có cách nào để phát hiện nếu mô hình đang được tạo hoặc cập nhật không?
bạn có thể vui lòng cho tôi biết rằng. Trả về nên được sử dụng hoặc không phải trên dòng 'super (Post, self) .save (* args, ** kwargs)'. Nó hoạt động mà không trở lại. –
Hoàn hảo! Câu trả lời rất hay. –