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

我认为您正在寻找的是datastore_query.CompositeOrderPropertyOrder列表中的属性组成的。Order 子类的来源似乎解释得很好,您可以看看ndb.Query.order()是如何构造它们的,然后自己动手将对象传递给构造函数。

(我想不出只使用 .order() 不合适的情况,而且会简单得多。)

于 2013-04-05T06:02:32.210 回答