1

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用のSunspotアダプター(/config/initializers/couchdb.rb)
  • Sunspotアダプターモジュール(/config/initializers/sunspot_couch.rb)

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

4

1 に答える 1

1

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

最初にデバッグするには、ブラウザーの管理UIでCouchにアクセスして、その目的が機能していることを確認します。次に、黒点が何かを得ていることを再確認します。サンスポットにレコードが含まれている場合、バグは検索側にあります。空の場合は、モデルクラスに挿入するオブジェクトライフサイクル管理コードに問題がある可能性があります。

真面目なRubyをやってから何年も経ちましたが、もっとお役に立てれば幸いです。1つのオプションは、CouchDB Luceneのような直接CouchDBフルテキストオファリングのいくつかを利用することです:https ://github.com/rnewson/couchdb-lucene

于 2011-09-14T15:41:44.687 に答える