2
我需要獲取其中的項目列表datePublished IS NOT ""
。但是,下面的代碼不起作用。有任何想法嗎?謝謝Objectify:獲取字符串列表不等於提供的值
Query<Diagram> q=ofy.query(Diagram.class).filter("datePublished !=", "").order("-likes").limit(18);
我需要獲取其中的項目列表datePublished IS NOT ""
。但是,下面的代碼不起作用。有任何想法嗎?謝謝Objectify:獲取字符串列表不等於提供的值
Query<Diagram> q=ofy.query(Diagram.class).filter("datePublished !=", "").order("-likes").limit(18);
在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這個數據。
也許,您可能會嘗試使用[部分索引](http://code.google.com/p/objectify-appengine/wiki/IntroductionToObjectify#Partial_Indexes)。例如'@Unindexed(IfEmptyString.class)String datePublished' – lifus