Es ist möglich? Ich möchte zwei Felder vergleichen und das Ergebnis in das Feld bet_score zurückgeben.Django Modellfeld mit Funktion
class Tabela(models.Model):
score1= models.IntegerField(max_length=3)
score2 = models.IntegerField(max_lenght=3)
bet_score= models.IntegerField(defaults=bet_score())
def bet_score(self):
if (self.score1> self.score2):
return 1
elif (self.score1== self.score2):
return 0
else:
return 2
Natürlich nicht automatisch, aber warum brauchen Sie dann ein Feld 'bet_score'? Funktioniert die Funktion nicht schon, was Sie brauchen? –
Jetzt erstelle ich das erste Modell, ich wünsche, dass bet_score Felder automatisch ausfüllen abhängig von score1 und score2. Vielleicht sollte ich den Ort wechseln, um die Funktion bet_score aufzurufen? – Mtzw
Wenn Sie kein Feld hinzufügen müssen, können Sie einfach eine Funktion verwenden. Fügen Sie den dcoorator '@ property' hinzu, damit es wie ein Feld aussieht:' tablea.bet_score' statt 'tablea.bet_score()': https://docs.python.org/2/library/functions.html#property –