我正在使用 LucidWorks 和 Solr 在一个大型且多样化的 Web 应用程序中实现搜索,该应用程序具有许多不同类型的页面。该规范要求按页面类型分组的单个搜索结果页面,并在每个组中对搜索结果进行分页。
我可以很容易地用这样的东西分组
q=[searchterm]&group=true&group.field=[pagetypefield]
它返回很好的分组结果。
我也可以这样做:
q=[searchterm]&group=true&group.field=[pagetypefield]&group.offset=[x]&group.limit=[y]
这将从结果 x 开始每组得到 y 个结果
但是,我希望能够为每组提供偏移量和限制,因为我可能希望获得第 1 组的结果 0-4 和第 2 组的结果 5-9。
的值[pagetypefield]
是已知值的列表,因此我可以执行多个查询,例如:
q=[searchterm]&group=true&group.query=[pagetypefield]:[value]&group.offset=[x]&group.limit=[y]
对于每个已知值[pagetypefield]
或者不使用 group.offset ,在我的示例中为两个组获取结果 0-9 并丢弃我不需要的结果。
我真的不喜欢这两个选项,但我无法在文档中找到一种方法来指定每个组的偏移量和限制。
任何建议将不胜感激。