0

我正在使用 OpenSearchServer v1.2.4。我想访问 OpenSearchServer 数据库字段,如“自动完成”或拼写检查等。我该怎么做?OpenSearchServer api 仅通过 XML 提供标题、元、url 字段和其他一些字段。请建议我查询/搜索模式以获取自动完成字段。

4

1 回答 1

1

您可以通过编辑查询轻松控制返回的字段。为此,请转到查询选项卡面板。

拼写检查

要激活拼写检查,请编辑“搜索”查询并转到拼写检查选项卡面板。如果您使用的是 Web 模板,请使用“contentExact”或“titleExact”字段。拼写检查模块将通过提取该字段中存在的单词来构建字典。有三种可用算法:Levensthein、Jaro-Winkler、NGramDistance。

一旦您设置了拼写检查设置并保存了查询,您就可以使用 XML over HTTP API 来使用它。大多数时候,XML 将包含拼写检查建议。您必须决定何时向用户显示建议。当搜索没有返回文档时,您可以显示建议。

自动完成

“自动完成”字段的作用是收集索引文档(网页)中可用的所有表达式。

这是构建自动完成功能的常用方法:

  • 使用以下字段创建一个新的空索引:
    • 表达式:索引,存储,分析器描述器在下一点。
    • 频率:索引,不存储。
  • 使用以下参数为表达式字段创建文本分析器:
    • 分词器:标准分词器
    • 在过滤器列表中,添加:
      • 小写过滤器
      • 一个 EgdeNGramFilter(最小克大小:1 - 最大克大小:50 - 边缘侧:前)
  • 创建一个调度器作业。它将定期使用收集的表达式填充新索引(例如:每天一次)。典型的任务和参数是:
    • 添加“删除查询”任务:查询::
    • 添加“Pull terms”任务:
      • 源字段名称:自动完成
      • 索引来源:网络索引的名称
      • 术语字段名称:表达式
      • 频率字段名称:freq
      • 最小频率:1
      • 频率垫:9
    • 添加“索引 - 优化”任务。
  • 使用以下参数创建一个新请求:
    • 模式查询:表达式:($$)
    • 返回字段:表达式
    • 排序字段:频率降序,分数降序
  • 使用新查询集成自动完成用户界面。
于 2012-04-08T10:21:49.317 回答