1

Ruby 用の Thinking Sphinx でプレフィックスやスターを処理できるようにしようとしていますが、新しい構成ファイルを生成するたびに、それが無視されるようです。

追加した行は次のとおりです。

define_index do
    [... Stuff ...]
    set_property :min_prefix_len => 1
end

そして、私は実行します:

rake ts:config
rake ts:in
rake ts:run

そして何も新しいことはありません。設定ファイルをチェックし続けていますが、これが原因で変更されることはありません。私も手動でファイルを変更してから、min_prefix に関係のないファイルに置き換えます。何かご意見は?


編集 -

現在、.yml ファイルがありません。

4

2 に答える 2

2

ローカル マシンでこれをテストしたところ、うまくいきません... バグの原因を突き止めることができるかどうかを確認します。私のミス、設定キーを間違えました。それは実際に私にとってはうまくいきます。

では、使用している Thinking Sphinx のバージョンは何ですか? インデックス定義には他に何がありますか? sphinx.yml ファイルはありますか? もしそうなら、何が入っていますか?

また、 Google グループでこの議論を続けることもおそらく価値があります。これは、デバッグを行ったり来たりするのに少し適しています。

于 2009-12-29T01:37:34.190 に答える
2

質問に対する答えは次のようになりました。

-より新しいバージョンの TS にアップグレードします - 古いバージョン (<1.3.14) は複数のインデックスをサポートしていません

-定義インデックス ブロックは、次のように設定する必要があります。

  define_index 'library_index' do
     [...]
  end

  define_index 'prefix_library_index' do
     [...]
     set_property :min_prefix_len => 1
  end

-検索機能を呼び出すには、インデックスを指定する必要があります。そうしないと、すべてのインデックスを検索します-

Library.search(keyword, { index => 'prefix_libary_index', <other params here> } )
于 2010-01-07T18:50:20.950 に答える