私は最近、私のdjangoモデルの1つを検索するためにsolrとhaystackを設定しました。私が使用する干し草の山で構築されたデフォルトのSolrのスキーマを変更しようとしNGramTokenizerFactory
:Haystackが戻ってこないSolr Admin Consoleのハイライト
<fieldType name="text" class="solr.TextField">
<analyzer type="index">
<tokenizer class="solr.NGramTokenizerFactory" minGramSize="3" maxGramSize="32" />
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
<analyzer type="query">
<tokenizer class="solr.NGramTokenizerFactory" minGramSize="3" maxGramSize="32" />
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
</fieldType>
私は、ユーザーのクエリにマッチしたいと思い、私のデータベース内の1つのまたは2つのワードエントリの束を持っています。たとえば、タイトルが「犬」のオブジェクトと、タイトルが「猫」のオブジェクトがあります。ユーザーが "dog cat"を検索した場合、そのクエリのdogオブジェクトとcatオブジェクトの両方を返したいと思います。
同様に、「私のクールなウェブサイト」を検索すると、「ウェブサイト」を含むフィールドが返されます。
solr管理インターフェイスを使用して、クエリが一致しているかどうかを確認しました。すべてが大丈夫あるようです:あなたが見ることができるように
、何も結果が見つからない: :私はその同じクエリを検索するための干し草の山のデフォルトの検索インタフェースを使用する場合 問題があります。私はKeywordFactoryとさまざまなsolr設定を使ってみました。私が間違っていなければ、クエリはになるはずです。なぜ乾草が空になっているのかわからない。
このような検索については、これが最善の方法であるかどうかについてのお手伝いやご提案ありがとうございます。
完全な回答をいただきありがとうございます。これは私が望んだものを達成しました。 –