2013-04-05 35 views
0

我在https://developers.google.com/appengine/docs/python/ndb/queryclass注意到,ndb.Query构造函数有一个可选参数,它允许您指定查询中的顺序。这个参数必须是datastore_query.Order类型,但我似乎无法找到关于此对象的任何文档或如何创建它。我想这样做的是指定模型属性的列表,通过订购:如何为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) 

任何想法?

回答

0

我认为你要找的是datastore_query.CompositeOrderPropertyOrder组成的列表中的属性。 source for the Order subclasses似乎很好解释,你可以看看ndb.Query.order()做什么来构建它们,并自己做这件事来让对象传递给构造函数。

(我不能想到这里只用.order()不适合不过的情况下,它会简单得多。)

+0

我想我是过于复杂的事情。我发现我可以使用Mode.query()。order(* [...])。 – Trevor 2013-04-05 07:10:30

+0

是的,请使用.order(...)。 – 2013-04-05 14:41:53

相关问题