Google 数据存储相同 属性 的多个值

Google datastore multiple values for the same property

我正在为 Android 应用程序使用 Google 数据存储,后端是用 Java 编写的。在一个 table 中,我想将多个值设置为相同的 属性:

Entity newGroup = new Entity("group");
newGroup.setProperty("member", "A");
newGroup.setProperty("member", "B");
newGroup.setProperty("member", "C");
datastore.put(newGroup);

然后我想查询一个用户所属的所有组,我执行以下操作:

    Query.Filter filter = new Query.FilterPredicate("member", Query.FilterOperator.EQUAL, "A");
    Query q = new Query("group").setFilter(filter);

    PreparedQuery pq = datastore.prepare(q);

但是,查询没有生成任何结果。在文档中提到,如果 属性 的至少一个值与过滤器匹配,则返回实体,这让我感到困惑。

谢谢!

应该是:

List<String> members = new ArrayList<String>(3);
members.add("A");
members.add("B");
members.add("C");

Entity newGroup = new Entity("group");
newGroup.setProperty("member", members);
datastore.put(newGroup);