我不完全确定分面意味着什么,但它看起来像是一种将查询范围限定为具有键值匹配的记录子集的方法。我想对 account = facebook:123
或 account = twitter:567
等社交帐户进行分面过滤。
问题是语法已经包含一个冒号。我对两个冒号 account:facebook:123
或 uri 编码的 account:facebook%3A123
都没有任何运气。
有没有办法在不更改数据的情况下进行分面查询?
这是对文档子集进行范围查询的最佳方式吗?
最佳答案
您对方面的范围功能是正确的。您也可以将分面视为过滤。
在分面过滤器中传递冒号没有问题,但是一旦您开始想知道要使用什么语法,只需使用以下语法:
{ facetFilters: '["facetKey:facetValue"]' }
JS 客户端应该自己编码。
在这里,我猜您没有在
account
中声明属性 attributesForFaceting
。您可以使用 API 或在您的 Algolia 仪表板中的索引的“显示”选项卡中执行此操作。关于algolia - 如何使用值中的冒号对搜索进行分面过滤?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35370786/