在SOLR的结果查询中显示数据配置文件中定义的字段



我仍然是SOLR的新手,我已经设法从数据库中安装和索引了1000个文档。当我提交查询时,结果会正确返回,但字段的顺序不会显示为数据配置文件中定义的顺序。

数据配置文件示例:

<field column="id" name="event_id" />
<field column="event_desc_current" name="event_desc" />
<field column="event_cost" name="event_cost" /> 
<field column="event_sponsors" name="event_sponsors" />
...

返回结果示例:

<result name="response" numFound="7" start="0">
  <doc>
    <str name="event_desc">Church Fund Raising</str>
    <arr name="event_sponsors">
      <str/>
    </arr>
    <str name="event_id">2</str>
    <int name="event_cost">428</int>
    ...
    <long name="_version_">1472652516366745600</long></doc>

我如何输出数据配置文件中定义的字段的顺序:

event_id
event_desc
event_cost
event_sponsors
...

通常,字段的顺序应该无关紧要,因为您将在客户端中反序列化它,并且显示搜索结果的逻辑是与客户端一起的。

但是,如果您确实想要指定字段的顺序,您可以在Solr查询中使用fl参数来按照您喜欢的顺序获得结果。

您还可以选择在搜索字段中包含哪些字段。

就我个人而言,我建议您不必担心字段的顺序,并拥有一个可以以任何顺序使用字段的客户端。原因是,如果您在模式中添加一个新字段,在中间,您可能会破坏客户端的逻辑!

最新更新