Elasticsearch默认在页面加载时没有结果

时间:2014-06-25 08:54:09

标签: ruby-on-rails search elasticsearch

在我的索引页面上显示streams,可以使用elasticsearch搜索它们。

  def index

    @streams = Stream.search(params)

  end

页面加载后,将显示所有结果,用户可以进行搜索,并显示搜索结果。

如何在页面加载时默认不显示结果?只有当用户进行搜索时才会返回结果。

1 个答案:

答案 0 :(得分:2)

首先,我会设置哪个params与您的用户搜索相关。您可以将其存储在params[:search]之类的内容中。然后,您只需检查params[:search]的内容:

def index
  @streams = params[:search] ? Stream.search(params[:search]) : Stream.none
end

Stream.none是一个rails 4方法,它将返回一个空关系