阿尔戈利亚:按字符串数组属性和可能值的字符串数组过滤索引

时间:2018-10-13 13:59:37

标签: algolia

我有一个Algolia索引,其中包含以下对象:

 id: 2,
 name: test,
 important: ["lorem", "ipsum", "dolor", "sit", "amet"]

我想检索所有条目,例如包含"dolor""sit"

我将如何处理?

注意:这只是一个示例,每个条目的important数组通常包含大约1到4个值(总共大约1.000个可能的值)。通过/进行过滤以搜索的数组的值可以介于1到400之间。


什么AFAIK不起作用:

  • 使用facetQuery搜索Facet值:facetQuery不允许使用布尔运算符。因此,我一次只能搜索"dolor""sit"中的一个,请参阅docs

  • filters docs却说

  

需要将非数字属性(例如字符串)设置为类别,我们将其称为方面。

所以我想知道这是否完全可能...?还是我以错误的方式来解决这个问题?

1 个答案:

答案 0 :(得分:1)

您正在寻找正确的位置,需要将attributeFFaceting和filter组合在一起:

您的过滤器将如下所示:{ "filters": "important:dolor OR important:sit" }