0

https://developers.google.com/appengine/docs/python/ndb/queryclassで気付きました。 ndb.Query コンストラクターには、クエリで順序を指定できるオプションの引数があります。この引数は datastore_query.Order 型である必要がありますが、このオブジェクトまたはその作成方法に関するドキュメントが見つからないようです。私がやりたいことは、順序付けするモデル プロパティのリストを指定することです。

property_list = [Item.property1, Item.property2]
items = Item.query(orders=Order(property_list))

それ以外の:

items = Item.query().order(Item.property1, Item.property2)

何か案は?

4

1 に答える 1

0

あなたが探しているのは、リスト内のプロパティの s でdatastore_query.CompositeOrder構成されていると思います。Order サブクラスPropertyOrderのソースは非常によく説明されているようで、ndb.Query.order()がそれらを構築するために何をするかを見て、コンストラクタに渡すオブジェクトを取得するために自分でそれを行うことができます。

(ただし、 .order() を使用するだけでは適切でない状況は考えられませんが、はるかに簡単になります。)

于 2013-04-05T06:02:32.210 に答える