3

Haystack の Web サイトhttp://django-haystack.readthedocs.org/en/latest/tutorial.htmlで提供されている基本的なチュートリアルを試してみましたが、基本的な検索では問題なく動作しました。Noteただし、モジュールにtextフィールドのエントリが 3 つあると仮定すると、その検索は効果的ではありません。

  1. Web サイトのテーマを設計/編集するための Twitter Bootstrap デザイナーの必要性
  2. Ubuntu で mod_wsgi、virtualenv を使用する Django (python) アプリ
  3. ラジャスタンで開催される Python 試験。

私が検索すると

pythonその結果: 2 & 3テキスト フィールド。

python exam結果: 3 番目のテキスト フィールド

しかし、検索python flaskしても結果は何もありません。キーワードがあるので、 2番目と3番目の結果がまた欲しいです。python

検索boot結果はありませんが、最初の結果を表示する必要があります。ブートストラップワードに含まbootれています。

pyton再度検索しても結果はありませんが、 pythonから欠落している文字は 1 つだけなので、2 番目と 3 番目の結果が表示されるはずです。h

bootstrap django再度検索しても結果はありませんが、 1 番目と 2 番目の結果が表示されるはずです。

そのため、ヘイスタックの高度な設定がいくつか欠けているようです。

単純に直接一致するだけでなく、より良い結果が得られるように、より効果的な検索を行うにはどうすればよいですか?

4

1 に答える 1

5

インライン応答として、さまざまな質問に回答しました。

しかし、pythonフラスコを検索すると、結果は何もありません。python キーワードがあるので、2 番目と 3 番目の結果が再び必要です。

haystack 演算子を から に変更ANDORます。詳細については、 http://django-haystack.readthedocs.org/en/v2.1.0/settings.html#haystack-default-operatorを参照してください。

ブートを検索しても結果はありませんが、最初の結果が表示されるはずです。ブートストラップ ワードにブートがあります。

部分一致については、NgramFieldとを参照してください。EdgeNgramField

pyton を再度検索しても結果はありませんが、2 番目と 3 番目の結果が表示されるはずです。これは、python から欠落している文字が 1 つだけであるためです。

haystack のスペリングの提案を見てください: http://django-haystack.readthedocs.org/en/latest/searchqueryset_api.html#spelling-suggestion

ブートストラップ django を再度検索しても結果はありませんが、1 番目と 2 番目の結果が表示されるはずです。

これは、haystack オペレーターによって構成されます。


ORデフォルトのオペレーターがandに設定された Haystack 2.0+ の設定例INCLUDE_SPELLING=True

HAYSTACK_CONNECTIONS = {
    'default': {
        'ENGINE': 'haystack.backends.solr_backend.SolrEngine',
        'URL': 'http://localhost:9001/solr/default',
        'INCLUDE_SPELLING': True,
    },
}
HAYSTACK_DEFAULT_OPERATOR = 'OR'
于 2013-08-11T05:15:34.297 に答える