如何使用值中的冒号过滤搜索?

AJc*_*dez 3 algolia

我不完全确定faceting的含义,但它看起来像是一种将查询范围限定为具有键值匹配的记录子集的方法.我想在社交帐户上过滤,如account = facebook:123account = twitter:567.

通过构面列表过滤查询.构面用逗号分隔,每个构面编码为attributeName:value.
- algolia docs

问题是语法已包含冒号.我对两个冒号account:facebook:123或uri编码都没有运气account:facebook%3A123.

有没有办法在不改变数据的情况下进行分面查询?

这是范围查询文档子集的最佳方式吗?

Jer*_*ska 5

你对方面的范围界定能力是正确的.您还可以将faceting视为过滤.

在facet过滤器中传递冒号没有问题,但是一旦开始想知道要使用什么语法,只需使用以下语法:

{ facetFilters: '["facetKey:facetValue"]' }
Run Code Online (Sandbox Code Playgroud)

JS客户端应该自己编码.

在这里,我猜你没有声明account你的属性attributesForFaceting.您可以使用API​​或在Algolia仪表板中,在索引的"显示"选项卡中执行此操作.