質問

セットアップしようとしています websolr 私の〜の上に Herokuアプリ. 。私はフォローしています Heroku Docsの指示. 。最初のセットアップは正常に動作しています。

開発中:

ruby-1.9.2-p0 > Note.search { keywords 'grit' }.results.length
 => 3

私は茎を追加しようとしています。 schema.xmlファイルの関連部分をこれに更新しました。

<fieldType name="text" class="solr.TextField" omitNorms="false">

  <analyzer type="query">
    <tokenizer class="solr.StandardTokenizerFactory"/>
    <filter class="solr.StandardFilterFactory"/>
    <filter class="solr.LowerCaseFilterFactory"/>
    <filter class="solr.PorterStemFilterFactory"/>
  </analyzer>
  <analyzer type="index">
    <tokenizer class="solr.StandardTokenizerFactory"/>
    <filter class="solr.StandardFilterFactory"/>
    <filter class="solr.LowerCaseFilterFactory"/>
    <filter class="solr.PorterStemFilterFactory"/>
  </analyzer>

</fieldType>

その後、再インネックスしました:

$ rake sunspot:reindex

しかし、それはまったく機能していないようです:

ruby-1.9.2-p0 > Note.search { keywords 'gri' }.results.length
 => 0

私は何が間違っているのですか?

役に立ちましたか?

解決

ここには2つのアイデアがあります:

第一に、あなたはあなたがあなたを変更した後にあなたがsolrを再起動したかどうかについては言及しませんでした schema.xml. 。だから:あなたはあなたの変更が有効になるようにsolrを再起動していますか? :)

次に、私はこの用語かどうか疑問に思っています grit それを持っている資格さえあります t ポーターステムのアルゴリズムの下で削除されました。あなたは次のことをよく読む必要があります Porter -Stemmerアルゴリズム 念のため。しかし、あなたはもっと明白な例を試すこともできます(たとえば、 writingwrite).

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top