0

values_listデータベースからオブジェクト全体をロードするのではなく、必要な情報のみを返すようにいくつかのクエリを最適化しています。

オブジェクトごとに、その子のセットにアクセスして情報を取得する必要があります。

私のコードは次のように構成されています。

class MyObj(models.Model):
    field_a = models.Integer()

class Child(models.Model):
    parent = models.ForeignKey(MyObj, related_name='children')
    field_b = models.Integer()

それぞれについて、そのすべての子の値にできるだけ効率的MyObjにアクセスしたいと思います。field_b

のようなクエリが必要なmodels.MyObj.values_list('children__field_b')値のリストを返すことを期待していましたが、単一の値しか返されませんでした。

を使用して説明したように、フィールドの値のリストを取得することは可能values_listですか?

MyObjそうでない場合、それぞれとその子を反復処理する最もパフォーマンスの高い方法は何でしょうか?

4

1 に答える 1

0
foo = MyObject.objects.get(pk=1)
foo.child_set.values_list('field_b')
于 2013-07-17T10:14:08.817 に答える