Search 使用Ransack Rails搜索多个模型4

Search 使用Ransack Rails搜索多个模型4,search,ruby-on-rails-4,ransack,Search,Ruby On Rails 4,Ransack,我想知道如何用Ransack搜索多个模型。目标是在我的共享标题中包含搜索表单。我结合使用了他们的文档、一个旧的rails cast、一些问题和一些朋友与我共享的代码。现在我认为它是有效的,尽管我不确定,因为我无法在我的索引页面上显示结果 首先,我创建了一个搜索控制器: class SearchController < ApplicationController def index q = params[:q] @items

我想知道如何用Ransack搜索多个模型。目标是在我的共享标题中包含搜索表单。我结合使用了他们的文档、一个旧的rails cast、一些问题和一些朋友与我共享的代码。现在我认为它是有效的,尽管我不确定,因为我无法在我的索引页面上显示结果

首先,我创建了一个搜索控制器:

class SearchController < ApplicationController  

    def index
            q = params[:q]
            @items    = Item.search(name_cont: q).result
            @booths = Booth.search(name_cont: q).result
            @users    = User.search(name_cont: q).result
        end
    end 
搜索控制器的index.html.erb为空,我怀疑这就是问题所在,但我不确定要在那里放置什么。当我尝试类似于:

<%= @items %>
<%= @users %>
<%= @booths %>
<% @items.each do |item| %>
  <%= item.name %> # or whatever
<% end %>
<% @users.each do |user| %>
# and so on

这是我执行搜索时得到的输出:

#<Item::ActiveRecord_Relation:0x007fee61a1ba10> #<User::ActiveRecord_Relation:0x007fee61a32d28> #<Booth::ActiveRecord_Relation:0x007fee61a20790>
###
有人能告诉我解决方案是什么吗?我不确定这是索引视图问题、路由问题还是其他问题。在所有教程中,搜索字段和结果仅针对一个模型,因此我对如何在多个模型中实现这一点有点困惑


谢谢

您得到的输出是正确的。这些变量中的每一个都包含一个
ActiveRecord\u关系
对象,可以将其视为数组。通常情况下,您会这样做:

<%= @items %>
<%= @users %>
<%= @booths %>
<% @items.each do |item| %>
  <%= item.name %> # or whatever
<% end %>
<% @users.each do |user| %>
# and so on

谢谢你的帮助。我离得很近,但还不够近。
<% @results.each do |result| %>
  # display the result
<% end %>