说我在doc中有以下字段:
<str name="groupId">1000 1001 1002</str>
我希望能够将用户所在的groupId列表作为过滤器查询传递,并且只撤出用户拥有的groupIds在文档中全部匹配的文档 - 如果在该文档中存在groupid用户不在的doc然后不返回doc。如果查询中的groupId不在doc中,那么将被忽略 - 用户可以属于比doc更多的组。但是用户必须位于doc指定的所有groupId中,否则他们无权查看它。
这可能吗?
[UPDATE]
我现在添加了我的multiValue字段,如下所示:
<arr name="groupId">
<str>1000</str>
<str>1001</str>
<str>1002</str>
</arr>
如何确保具有用户组1000,1001,1002,1003的用户获得该文档但具有组1000,1002,1003的用户不能获得组1001?
答案 0 :(得分:0)
是的,你可以这样做。我建议将这些groupId值存储在架构中的multiValued字段中。有关使用多值字段
的一些好的指导,请参阅以下内容如果您将这些存储在multiValued字段中,您可以按照声明发出过滤查询,只返回所有指定的groupId关联的文档。