代码之家  ›  专栏  ›  技术社区  ›  Aun

App Engine FilterPredicate在查询字符串时不返回任何内容

  •  0
  • Aun  · 技术社区  · 7 年前

    我正在使用Java 8在Google App Engine上构建一个爱好项目,但我的查询返回null,即使我的本地主机上的数据存储中存在实体。

    从数据存储

    key: aglub19hcHBfaWRyGAsSC0dyb2NlcnlMaXN0GICAgICAgMAJDA ID/Name: 5348024557502464   created: Tue Dec 04 22:06:11 CET 2018   owner: 185804764220139100000
    

    我使用UserServiceFactory获得的“所有者”Id是正确的,检查了几次。

    下面是我查询所需实体的方式

    Query q = new Query("GroceryList")
              .setFilter(new FilterPredicate("owner", FilterOperator.EQUAL, currentUser.getUserId()));
    
            DatastoreService datastore = DatastoreServiceFactory.getDatastoreService();
            PreparedQuery pq = datastore.prepare(q);
            Entity result = pq.asSingleEntity();
    

    但实体为空,不提取任何内容。我曾经 https://github.com/GoogleCloudPlatform/java-docs-samples/blob/2e5996c68440134a79f1511c57529fa5cf987628/appengine-java8/datastore/src/test/java/com/example/appengine/QueriesTest.java#L787 作为参考。

    我做错了什么?

    0 回复  |  直到 7 年前