2012-03-22 3 views
1

すべてのモデルエンティティのリストが必要です。 Model.all()はgqlqueryを返します。私はその後、クエリのリストの理解を行い、私が求めている結果に終わることができることを知っています。理解を進めるための追加ステップを保存する方法は既に組み込まれていますか?gengqueryではなく、appengineのモデルのすべてのエンティティを取得できますか?

または、誰もがサブクラス化して、メソッド自体を構築していますか? ...これは安全対策で、より多くのデータにアクセスすることができなくなり、費用が発生することを意図していましたか?

ありがとうございました

+0

実際には、 'Model.all()'は 'GqlQuery'ではなく' Query'を返します。 –

答えて

1

エンティティにアクセスするには、キーが必要です。エンティティの種類だけがある場合、GAEはすべてのキーを見つけるためにインデックスを通過する必要があります(例: Metadata Queriesを使用します。

メタデータクエリでは、名前空間、種類、およびプロパティによってクエリを行うことができます。

1

あなたは2つのオプションがあります。

  • 使用は(フェッチ)とModel.all()のようなエンティティの定義された数を取得するフェッチ(100)
  • 使用Model.all()とオーバーループクエリ。
+0

(OPが示唆しているように)クエリを反復することは悪い考えです。単なる1つではなく、複数のフェッチ操作になります。 –

関連する問題