4

docsによると、list() が呼び出されるとクエリセットが評価されます。

モデル オブジェクトの代わりにクエリセットを使用してリスト/タプルを追加する方法はありますか? リスト/タプルの操作ごとに list() が呼び出されますか?

例えば:

foo= Foo.objects.all()
bar = Bar.objects.filter(enabled=True)

my_list = []

my_list.append(foo) <-- evaluates
my_list.extend(foo) <-- evaluates

my_tuple = ()
my_tuple = my_tuple + (foo,) <-- evaluates

# so I'm getting
[<Foo: ModelDescription>,<Foo: ModelDescription>,<Bar: ModelDescription>]

#but I want
[<Queryset: Foo>, <Queryset:Bar>]
4

1 に答える 1