Die Dokumentation sagt:
Wenn die Tabelle von einem Modell unterstützt wird, übernimmt die Datenbank die Reihenfolge. 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, in der durch ein Modell in einer benutzerdefinierten Spalte unterstützt wird? z.B.
%Vor%Wenn ich so etwas versuche, wird in der Spalte OK angezeigt, aber wenn ich auf die Spaltenüberschrift zum Sortieren klicke, erhalte ich folgende Fehlermeldung:
Captched FieldError beim Rendern: Kann das Schlüsselwort u'z 'nicht in das Feld auflösen. Entscheidungen sind: ...
Offenbar liegt das daran, dass z in der Datenbanktabelle nicht gefunden wird.
Gibt es einen Weg dazu?
Sie können einen Abfragesatz nicht verwenden, wenn Sie für ein Attribut bestellen, das keine Datenbankspalte hat. Sie können jedoch eine Liste an Ihre Tabelle übergeben.
Angenommen, Ihr models.py sieht so aus:
%Vor%Sie könnten tables.py haben, das wie folgt aussieht:
%Vor%Dann in Ihrer views.py:
%Vor%Es gibt auch ein offenes Ticket, das dieses Problem diskutiert .
Tags und Links django django-tables2