ich die Methode speichern auf einem meiner Modelle bin überschreiben:benutzerdefinierte Methode auf Modell speichern - 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]
Allerdings möchte ich nur set_coords()
einmal ausgeführt, wenn die Post erstellt wird. Diese Funktion sollte nicht ausgeführt werden, wenn das Modell aktualisiert wird.
Wie kann ich das erreichen? Gibt es eine Möglichkeit festzustellen, ob das Modell erstellt oder aktualisiert wird?
Können Sie mir bitte sagen. Return sollte verwendet werden oder nicht in der Zeile 'super (Post, self) .save (* args, ** kwargs)'. Es funktioniert ohne Rückkehr. –
Perfekt! Sehr gute Antwort. –