リポジトリ型のRails3サイトをまとめています。Thinking Sphinx をインストールして自分のサイトで作業していlocalhost:3000/articles?search=test&page=2
ます。
Rails (および一般的な Web 開発者) は初めてです。これのモデルとコントローラーの側面を管理できると思いますが、これまでのビューには困惑しています。検索インターフェイスとして使用したいサイドバーがあります。私が最も近いものはこれです(サイドバーのパーシャルの一部としてレンダリングされます):
<% form_tag @search, :method => :get do %>
<%= text_field_tag :search, params[:search] %>
<%= submit_tag "Search"%>
<% end %>
検索メソッドは私の article#index コントローラーにあります。ブラウザーがそのページを指している ( としてルーティングされている) ときにテストすると、/articles
期待どおりに動作しますが、この奇妙な url: localhost:3000/articles?utf8=✓&search=test&commit=Search
. ブラウザーが最初にルート パスをポイントしたときは、何も起こりません。
したがって、これらが私が対処する必要がある主な問題だと思います。
- 編集 - 解決済み (下記参照)
- 検索メソッドを独自のコントローラーに移動する必要がありますか、それとも記事コントローラーの一部にする必要がありますか? 今のところ、Article がインデックスされる唯一のモデルになります。
- 編集 - 解決済み (下記参照)
- Rails 3 と Thinking Sphinx を使用したファセット検索ビューの良いサンプル コードはありますか? 私が言ったように、私は初心者のようなもので、ビューの実装をざっと見たドキュメントに少し当惑しています。ただし、コードが十分に完成している限り、コードを読んで解釈することはかなり得意です。
前もって感謝します!
解決済み:
検索を試みる前に「検索」ボタンで index メソッドを呼び出すにはどうすればよいですか? (私はこれを に置き換えること
@search
で解決しましたarticles_path
)。以前
will_paginate
は問題がありましたが、現在は機能しているようです。