2017-01-25 8 views
0

私は、offersと呼ばれるインデックスを持っています。私はElastic検索でフルテキスト検索を実行しようとしています。Imはgem Tireを使用しています。Rails 4:ElasticSearchインデックスのWysiwygエディタからのテキストの消去

私のモデルは、説明フィールドを持っている、しかし、このフィールドの入力は、WYSIWYGエディタですので、私はElasticSearchインデックスのインデックス付きデータをチェックするときdescriptionフィールドは、すべての<p>の新しいライン\nおよび他の多くのコード文字を持っていますこのような:

<h2>Qu&eacute; hay en la caja:</h2>\r\n\r\n<ul>\r\n\t<li>Tablet KRONO 7021</li>\r\n\t<li>Cable USB</li>\r\n\t<li>

私の質問です:あなたはテキストを全文検索には影響を与えませんためにElasticSearchでデコードする必要があると思いますか?

+0

このフィールドに使用しているアナライザは何ですか? –

答えて

1

あなたは絶対にテキストをデコードする必要があります。 2つのオプション:

テキストを2つの異なるフィールド(1つはWYSIWYGタグ、もう1つはその列に対してクリーンと検索)として保存します。多くのエントリがある場合は問題があります。

弾性の"char_filter": [ "html_strip" ]オプションを使用します。あなたは、あなたのケースでどのくらいうまく動作するかを手動で試してみる必要があります。

+0

私はちょうど質問がありますが、私はすでに "" char_filter ":[" html_strip "]'でカスタムアナライザを追加しましたが、elasticsearchでインデックスデータをチェックするとテキストは変わらないので、間違っているか、そうであれば、アナライザはインデックスに結果を表示しませんか? – SsouLlesS

+0

文書を再インデックス付けしましたか? –

+0

私はElastic Search 2.4を使用していますが、インデックスにデコードされていることを確認できるはずです。 – SsouLlesS

関連する問題