2016-10-02 16 views
0

クエリセットの各モデルインスタンスからidフィールドの値を抽出する必要があります。より効率的なのは、リスト内包または値リストメソッドを使用してクエリーセットを繰り返し、フラット引数をtrueに設定してからリストに変換する方法です。値リストvs反復

答えて

1

values_listは、データベースから要求されたフィールドのみをフェッチし、モデルインスタンスをインスタンス化しないため、よりパフォーマンスが向上します。

Django documentationを引用:

あなたが唯一の利用可能なフィールドの数が少ないから値を必要になるだろう知っているときに便利ですし、モデルインスタンスオブジェクトの機能を必要としません。使用するフィールドだけを選択する方が効率的です。

関連する問題