0

Rails(2.3.11)アプリケーションには、STIを使用して構築され、そのように配置されたモデルがいくつかあります。

Gallery::Base < ActiveRecord::Base(SOLRのインデックス)

Gallery::Local < Gallery::Base (SOLRのインデックス)

Gallery::Remote < Gallery::Base (索引付けされていません)

これらのモデルのインデックス作成に関して、異なる結果が見つかりました。現在の開発データベースには77個のオブジェクトがあり、オブジェクトはGallery::LocalありませんGallery::Remote(つまり、データベースに77個のオブジェクトがありGallery::Baseます)

問題は、どちらかが単一のヒットを返すSunspot.search(Gallery::Base)だけでなく、ということです。Sunspot.search(Gallery::Local)

ここで、見知らぬ部分について説明します。本番データベース(数百のオブジェクトを含む)を使用している同僚のコンピューターでは、または!Gallery::Localのいずれからもヒットは返されません。Sunspot.search(Gallery::Base)Sunspot.search(Gallery::Local)

ちなみに、との両方にインデックスを付けて、それぞれに別々にインデックスを付け直してみGallery::BaseGallery::Localところ、同じ結果になりました。全文検索が意図したとおりに機能する他のインデックス付きモデルもいくつかあります。

誰もがこれを引き起こしているものとして何か考えを持っていますか?

4

1 に答える 1

1

実際に問題が何であるかを知りました。誰かが興味を持っている場合、sunspot:reindexタスクは名前空間モデルと「モジュール化」モデルを考慮していません。

修正については、githubでこのプルリクエストを確認してください(差分セクションに移動します)。

于 2011-03-25T10:28:44.213 に答える