小编arm*_*ing的帖子

Rails和Sunspot方面和过滤

这里几乎是一个noobie,所以我感谢任何人可以给予的帮助.

我正试图通过太阳黑子在我的网站上添加分面.Ryan刚刚发布了一个很棒的Railscast,它让我开始:http://railscasts.com/episodes/278-search-with-sunspot.我得到了它的工作,并能够添加其他方面.我的问题是方面彼此独立.如果我在3个不同的属性上有3个方面,当我选择了一个已经选中的方面时,我想只显示落入这两个方面的结果.截至目前,它只是从一个方面切换到另一个方面.我觉得这应该不是那么困难,但我无法弄清楚如何去做.

我确实找到了这个教程:http://blog.upubly.com/2011/01/06/using-sunspot-in-your-views/ 我觉得这样做我想要的.我试图让这个工作,但是,即使我试图让它只用一个方面工作,我没有列出任何结果.只是小平面名称,然后没有别的.

思考?

谢谢!!

UPDATE

以下是我要做的代码示例:

调整Railscasts代码我得到了这个:

在我的StylesController中:

 def index
  @search = Style.search do
  fulltext params[:search]
  facet :departmental, :seasonal, :classifier
  with(:departmental, params[:department]) if params[:department].present?
  with(:classifier, params[:classification]) if params[:classification].present?
  with(:seasonal, params[:season]) if params[:season].present?
end
Run Code Online (Sandbox Code Playgroud)

在我的样式索引视图中(我知道我需要浓缩这个)

  = form_tag styles_path, :method => :get do
    %p
      = text_field_tag :search, params[:search]
      = submit_tag "Search", :name => nil
  #facets
    %h4 Departments
    %ul
      - for row in @search.facet(:departmental).rows
        %li
          - if params[:department].blank?
            = link_to row.value, :department => row.value …
Run Code Online (Sandbox Code Playgroud)

solr ruby-on-rails facet sunspot

6
推荐指数
1
解决办法
5231
查看次数

标签 统计

facet ×1

ruby-on-rails ×1

solr ×1

sunspot ×1