【问题标题】:how to write search method code to search more than one id at a time如何编写搜索方法代码一次搜索多个id
【发布时间】:2012-06-05 02:41:16
【问题描述】:

在我的项目中,我尝试根据用户选择来展示产品。用户可以检查他们希望看到的部门(女性、男性和儿童)和类别(连衣裙、上衣、T 恤等)。为此,我正在使用复选框。如果用户仅选中(选择)女性部门,则将显示属于女性的所有产品。如果用户同时检查(选择)女性部门和服饰类别,则将显示同时属于女性部门和服饰类别的产品。如果用户同时选择男女部门和鞋类,则将显示属于男女部门和鞋类的所有产品。为了实现这一点,我正在使用 solr(太阳黑子宝石)。我的问题是我们可以同时为部门 ID 和类别 ID 传递多个 ID。

比如有没有可能

@search_res=ProductDetail.search do
  with :department_id, 1,2,3                  
  with :category_id, 1,2,3,4, etc (may be present or absent)           
end

如果可以请告诉我该怎么做?请给我语法?请帮我。

更新

感谢 Salil 的回答,但在这种情况下,部门 ID 和类别 ID 不是静态的。我只会在用户在运行时选择时才会出现。表示 category_id 和 department_id 是通用的。如何实现这一点。我想要这样的东西

@search_res=ProductDetail.search do
  with :department_id, params[:deptid]                  
  with :category_id,   params[:catid]         
end

请帮帮我。

【问题讨论】:

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


    【解决方案1】:

    这里是:

    @search_res=ProductDetail.search do
      all_of do
        with :department_id, [1,2,3]                  
        with :category_id, [nil,1,2,3,4] # I am not sure - but category_id nil should be to denote its absence 
      end
    end
    

    更多信息请参考: sunspot readme

    【讨论】:

      猜你喜欢
      • 2020-04-18
      • 2018-01-11
      • 1970-01-01
      • 2015-01-12
      • 1970-01-01
      • 1970-01-01
      • 2017-04-15
      • 2011-12-10
      • 2017-10-13
      相关资源
      最近更新 更多