Iam尝试使用objectify和GAE进行简单的排序。不幸的是它不起作用。这是一个简单的例子
class Book{
int publishYear;
long price;
}
根据谷歌的说法,你必须订购你对其进行不等式过滤的字段。所以我做了以下
query.filter("publishYear >=", year)
query.order("publishYear")
然后我想订购价格所以我添加了行
query.order("price")
但没有发生任何事情。我尝试了不同的领域,似乎每个查询只能生成一个订单。虽然这个例子说的不同
http://code.google.com/appengine/docs/java/datastore/queries.html#Restrictions_on_Queries
有人有线索吗?提前谢谢
答案 0 :(得分:1)
Objectify文档说:
通过过滤或排序来运行查询 反对多个属性(即, 如果不能通过之字形来满足 合并单一属性索引),你 必须在中创建一个多值索引 您的datastore-indexes.xml。有一个 关于这个主题写的很多;我们 建议How Entities and Indexes are Stored和Index Building。
希望它会有所帮助。