35

テーブルに表示するには、クエリセットを作成し、さまざまなクエリ結果から取得したオブジェクトを手動で追加する必要があります。xx=set() を使用していますが、うまくいきません。

4

3 に答える 3

35

次のいずれかの方法で実行できます。

from itertools import chain
#compute the list dynamically here:
my_obj_list = list(obj1, obj2, ...)
#and then 
none_qs = MyModel.objects.none()
qs = list(chain(none_qs, my_obj_list))

次のこともできます。

none_qs = MyModel.objects.none()
qs = none_qs | sub_qs_1 | sub_qs_2

ただし、これはスライスされたクエリセットでは機能しません

于 2013-08-15T14:57:55.423 に答える
14

そんなことはできません。クエリセットは、データベース クエリの表現です。アイテムを手動で追加することはできません。

ただし、任意の順序で並べられたモデル インスタンスのコレクションが必要な場合は、リストを使用してください。

于 2013-08-15T15:14:26.187 に答える