Hi there,
I’m going through this tutorial on Thinking Sphinx:
I’m really new to searches in rails; how do I get the search results to
display on a separate search result page?
I have a search form that appears on every page (in my
application.html.erb template) that looks like this:
<% form_for :recipes, :url => {:controller => “pages”, :action =>
“searchresults”} do |f| %>
<%= f.text_field :search %>
<%= submit_tag “Search” %>
<% end %>
This is a recipe search, but it doesn’t even work because :search isn’t
a field in the recipes table. I just want to grab a params[:search] that
I can use in my controller.
Here’s what my pages_controller.rb looks like:
def searchresults
@recipes = Recipe.search params[:search], :page => params[:page],
:per_page => 10, :field_weights => {:title => 20}, :match_mode =>
:boolean
end
I have no problem with this code; I have a searchresults.html.erb that
matches up just fine. But params[:search] == nil, so that’s no good.
How should I construct my form?
Thanks!