Algolia 未申报 属性 过滤器

Algolia Undeclared Property Filter

我想通过缺失的属性来过滤 Algolia,这可能吗?

目前我们正在使用:

filters:(expires=0 OR expires<1506338742)

对于具有 expires 属性 的内容效果很好,但并非所有内容都适用,因此它们会从结果中省略。

有没有办法在 属性 expires 不是 set/undefined 的情况下添加额外的条件?我尝试了几种不同的变体,但无法使其正常工作,文档似乎也没有涵盖这一点。

Algolia 不提供过滤属性是否存在的方法。 因此,您的问题的解决方案取决于预期结果。

这是您可以 return 没有过期属性的结果的一种方法。

在索引时,将另一个属性 has_expiration 与每条记录一起推送。 如果应考虑过期,则此属性应为布尔值,等于 true,否则为 false

然后您需要调整您的 filters 查询参数,如下所示:filters:(expires=0 OR expires<1506338742) OR has_expiration=0