2 つのフィールドの合計でクエリセットを並べ替えたい。
基本的に、モデルのデフォルトの並べ替え順序を次のように変更したい:(これは機能しません)
class Meta:
ordering = ('-my_property_but_not_field', 'my_another_field')
my_property_but_not_fieldモデルの 2 つのフィールドを合計します。
以下を使用するソリューションを見てきました。
extra: Django order_by sum of fields
annotate :集計フィールド値で QuerySet を
manager並べ替えます: Django でのカスタム順序付け
extraと を使用するとannotate、新しい並べ替え順序が必要なすべてのコードを変更する必要があります。
ではmanager、そのような問題はありません。
しかし、order_by_1、order_by_2 をエミュレートする方法がわかりません。