質問

CouchRestとSunspotの統合に問題があります。本の詳細を検索すると、Sunspotの結果が空です。私は長い間それをグーグルで検索しようとしますが、助けはありません。

Started GET "/books/search?utf8=%E2%9C%93&query=Book of Life&commit=Search%21" for 127.0.0.1 at 2011-09-08 11:27:41 +0700
Processing by BooksController#search as HTML
Parameters: {"utf8"=>"?", "query"=>"Book of Life", "commit"=>"Search!"}
Rendered books/index.html.erb within layouts/application (10.7ms)
Completed 200 OK in 145ms (Views: 20.6ms | ActiveRecord: 0.0ms)
[] <-- I got empty result

私のシステム

  • Ruby 1.9.2p290
  • Rails 3.0.10
  • couchdb 1.1.0

ファイル構造( https://gist.github.com/1164637/ )

  • モデル(/app/models/book_detail.rb)
  • コントローラー(/app/controllers/books_controller.rb)
  • couchrest用サンスポットアダプター(/config/initializers/couchdb.rb)
  • Sunspotアダプターモジュール(/config/initializers/sunspot_couch.rb)

注:コードリンクについて申し訳ありません。私はいつも「コードツールバーボタンを使用して4つのスペースですべてのコードをインデントしてください」を取得しました。タブをすべて削除して、コードフォーマットガイドラインに従うようにしていますが、機能しなくなりました。

役に立ちましたか?

解決

何かが足りない場合は許してください。しかし、SunspotがCouchRestオブジェクトの検索可能なフィールドに「キーワード」をどのようにマッピングしているかがわかりません。

最初にデバッグするには、ブラウザ管理UIでソファにアクセスして、その終わりが機能していることを確認します。それから私は、Sunspotが何でも手に入れていることを再確認します。 Sunspotにレコードが含まれている場合、バグは検索側にあります。モデルクラスに注入するオブジェクトライフサイクル管理コードで何かが起きている可能性がある場合は、バグが空です。

深刻なルビーをやったので、年齢が経ちました。もっと役立つことを願っています。 1つのオプションは、CouchDB Luceneのような直接のCouchDBフルテキストの一部を利用することです。 https://github.com/rnewson/couchdb-lucene

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