Rails:接受第一个搜索结果

时间:2011-06-01 19:32:14

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

我在Rails 3项目中使用MetaSearch,虽然我认为搜索方法并不重要。

我的控制器看起来像这样:

  def index
    @search = Household.search(params[:search])
    @households = @search.all
  end

如果只有一个搜索结果,我想直接转到该项目的“show”操作,否则转到“index”操作。 (现在一切都进入“索引”动作,这为用户增加了另一个步骤。)

任何想法如何实现这一目标?

2 个答案:

答案 0 :(得分:1)

尝试类似:

def index
  @search = Household.search(params[:search])
  @households = @search.all
  if @households.size == 1
    redirect_to @households.first
  end
end

答案 1 :(得分:1)

你可以添加像

这样的东西
if @households.count == 1
redirect_to household_path(@households.first)
end