2013-06-21 48 views
2

我需要獲取其中的項目列表datePublished IS NOT ""。但是,下面的代碼不起作用。有任何想法嗎?謝謝Objectify:獲取字符串列表不等於提供的值

Query<Diagram> q=ofy.query(Diagram.class).filter("datePublished !=", "").order("-likes").limit(18); 
+0

也許,您可能會嘗試使用[部分索引](http://code.google.com/p/objectify-appengine/wiki/IntroductionToObjectify#Partial_Indexes)。例如'@Unindexed(IfEmptyString.class)String datePublished' – lifus

回答

4

在GAE數據存儲中應用不等式過濾器時會有一些限制。 你可以在這裏閱讀更多:https://developers.google.com/appengine/docs/java/datastore/queries

在這種情況下,會對datePublished的不平等您必須訂購的同一領域主要是在您之前在另一份訂單。

所以假設datePublished字段建立索引:

Query<Diagram> q=ofy.query(Diagram.class).filter("datePublished !=", "").order("datePublished").order("-likes").limit(18); 

假設這是不是一個移民的關注,你可能要當你保存它,例如設置「noDatePublished」布爾考慮denormalising這個數據。