【问题标题】:How can I get max and min numeric value with in the search in algolia如何在 algolia 的搜索中获取最大和最小数值
【发布时间】:2017-04-12 22:37:58
【问题描述】:

我试图将我的日期范围过滤器限制为结果的最大和最小日期值(整个结果不仅仅是第一页)有没有办法 algolia 返回该值的最小值和最大值返回的数据 注意:它是一个数字属性而不是一个方面

【问题讨论】:

  • 你能告诉我更多关于你正在使用的 Algolia 库,InstantSearch,Autocomplete,Helper ...
  • 其实我们是在使用 helper 自己编写引擎代码

标签: search algolia


【解决方案1】:

如果您定义的其中一个方面包含数值,API 响应将包含一个facets_stats 键。它是一个每个方面都有一个键的对象,每个键都包含以下信息:minmaxavgsum

您可以找到有关 API 响应格式in the doc 的更多信息。

JS Helper 实际上有一个getFacetStats 方法来获取该数据。

请注意,这些值是动态的,并且与当前应用的其他过滤器相关(即,它们是当前与您的查询匹配的项目的最小值和最大值)。如果您想要索引中所有项目的绝对最小值和最大值,则必须首先执行一个空查询(无过滤器,无关键字)并将这些最小值/最大值保存在某处。

您必须将您的属性添加到attributesForFacetting 才能正常工作。

【讨论】:

  • 没错,我只是不想将数字属性添加为方面,但似乎这是获取数据的唯一方法谢谢
  • 添加,当添加attributesForFacetting时,对于数字属性,必须将其添加为“可搜索”。当我将它添加为 filterOnly 时对我不起作用。
猜你喜欢
  • 1970-01-01
  • 2014-11-03
  • 2018-04-09
  • 2014-01-12
  • 2021-11-08
  • 2019-09-11
  • 1970-01-01
  • 2019-08-18
  • 1970-01-01
相关资源
最近更新 更多