0

ハイライトで奇妙な問題が発生しています。私は大まかに次のような単純な構成を持っています:

<str name="defType">edismax</str>
<str name="qf">all_text</str>
...
<str name="hl">on</str>
<str name="hl.fl">*</str>
<bool name="hl.requireFieldMatch">false</bool>

「all_text」という単一のキャッチオールフィールドで検索を実行し、ドキュメント内の他のフィールドで強調表示を機能させたいと考えています。そのためrequiredFieldMatch=false
強調表示されることを意図した他のすべてのフィールドにインデックスが付けられて保存され、ディレクティブを使用してall_textにコピーされ<copyField>ます。

これはテキストフィールドでは問題なく機能しますが、フィールドのタイプがtint(TrieIntegerField)の場合、Solrはそれらのハイライト情報を返しません。たとえば、私はこのフィールドを持っています:

<field name="age" type="tint" indexed="true" stored="true" />

と:

<copyField source="age" dest="all_text" />

ただし、検索結果では強調表示されません。

4

1 に答える 1

2

どのバージョンのSolrを使用していますか?既知の問題が発生しているようです。

アップデート

問題が解決するまで、文字列型のコピーフィールドを使用して強調表示してみることができます。

于 2012-08-05T11:51:32.937 に答える