django - konvertiert eine Liste zurück in ein Abfrageset [duplizieren]
Diese Frage hat hier bereits eine Antwort:
Ein QuerySet nach aggregiertem Feldwert 3 AntwortenIch habe eine Handvoll Datensätze, die ich basierend auf einem berechneten Wert sortieren möchte. Habe die Antwort bekommenhier drüben... wie so:
<code>sorted(Profile.objects.all(), key=lambda p: p.reputation) </code>
in einer Profilklasse wie dieser:
<code>class Profile(models.Model): ... @property def reputation(self): ... </code>
Leider erwartet die generische Ansicht ein Queryset-Objekt und gibt einen Fehler aus, wenn ich ihm eine Liste gebe.
Gibt es eine Möglichkeit, dies zu tun, die ein Queryset zurückgibt
oder...
Kann ich eine Liste irgendwie in ein Abfrageset konvertieren? Konnte so etwas nicht in den Django-Dokumenten finden.
Ich hoffe, die Daten nicht zu denormalisieren, aber ich denke, ich werde es tun, wenn ich muss.
Update / Antwort:Es scheint, dass die einzige Möglichkeit, ein Abfrageset zurückzugewinnen, darin besteht, dass Sie Ihre gesamte Logik in die SQL-Abfragen einbinden können.
Wenn das nicht möglich ist, müssen Sie (glaube ich) die Daten denormalisieren