Nicht-Abfragesatz-Datenbestellung in django-tables2
Die Dokumente sagen:
Wenn die Tabelle von einem Modell unterstützt wird, übernimmt die Datenbank die Bestellung. Wo dies nicht der Fall ist, wird die Python-cmp-Funktion verwendet und der folgende Mechanismus wird als Fallback beim Vergleich zwischen verschiedenen Typen verwendet:
Aber ist das in einer Tabelle möglich, dieist von einem Modell auf einer benutzerdefinierten Spalte gesichert? z.B.
class MyModel(models.Model):
x = models.IntegerField()
y = models.IntegerField()
def z(self):
return x+y
class MyTable(tables.Table):
z = tables.Column()
class Meta:
model = MyModel
Wenn ich so etwas versuche, wird in der Spalte OK angezeigt. Wenn ich jedoch zum Sortieren auf die Spaltenüberschrift klicke, wird der folgende Fehler angezeigt:
Beim Rendern FieldError abgefangen: Das Schlüsselwort u'z 'kann nicht in ein Feld aufgelöst werden. Zur Auswahl stehen: ...
Anscheinend liegt dies daran, dass z nicht in der Datenbanktabelle gefunden wird.
Gibt es einen Weg, dies zu umgehen?