在下拉菜单中使用Elasticsearch Facets

时间:2014-03-07 22:27:30

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

我正在使用Tire和Elasticsearch,并且成功地遵循了这个railscast教程:http://railscasts.com/episodes/307-elasticsearch-part-2

我设置了一个方面,允许用户按状态过滤结果:

从我的模特:

def self.search(params)
  tire.search(page: params[:page], per_page: 15) do
    query do
      boolean do
        must { string params[:query], default_operator: "AND" } if params[:query].present?
      end
    end
    facet "states" do
      terms :state
    end
  end
end

此外,在视图中,我提供了一组链接,允许用户将结果集缩小为仅显示与其选择的状态匹配的值:

- @results.facets['states']['terms'].each do |facet|
  %li= link_to facet['term'], params.merge(state: facet['term'])

这个清单很长。我希望从链接列表转换到选择特定选项(状态)时更新结果集的下拉选项。

我想知道如何实现这一点 - 我已经看了一下select form helper,我还没有看到用选项填充select的方法,选中后会更新页面。

0 个答案:

没有答案