我有一个用户可以关注的用户列表,来自algolia索引。
const index = client.initIndex('index');
const f= { filters: 'objectType:user };
index.search('user', f, (e, c) => {
const x = c.hits;
});
现在,该用户已经关注了一系列用户ID,我不希望这些用户从此搜索中返回,我该如何过滤掉这些用户。在这种情况下,UserID
为objectID
。
答案 0 :(得分:3)
我建议使用Algolia"负面过滤器"做到这一点。
https://www.algolia.com/doc/guides/searching/filtering/?language=instantsearchjs#negative-filters
因此,如果您有一组用户ID,则可以构建一个类似于:
的过滤器const filters = 'objectType:user AND NOT objectID:123 AND NOT objectID:456 ...';
您可以通过循环遍历id数组来构建此过滤器字符串,并将其添加到每个用户ID的过滤器中:
`AND NOT objectID:${userId}`