使用一个搜索表单搜索多个模型

时间:2011-09-27 17:57:19

标签: ruby-on-rails ruby-on-rails-3 ruby-on-rails-3.1

我正在使用一个简单的rails应用程序,我想知道如何使用一个搜索表单在多个模型中搜索。就像我有一个故事模型和一个书模型。此搜索表单应该能够使用单个参数搜索两个模型。

<%= for_tag :url => search_path %> <%= text_field_tag :q %> <% end %>

如何从多功能模型的工作中搜索

1 个答案:

答案 0 :(得分:0)

无论您需要做什么搜索,都是在控制器中的操作内完成的。你基本上可以创建一个控制器,比如说 search_controller 并有一个动作, item

def item

   if params[:q]
       @found_stories = Story.find_all_by_...(params[:q])
       @found_books= Book.find_all_by_...(params[:q])
   end

end

然后您可以在视图中使用对象@found_stories和@found_books来显示搜索结果。

这只是您如何满足您的要求的一个例子。

感谢。