Ruby on rails 继续搜索,直到达到极限
我有一个搜索,可以找到所有3个匹配的类别、所有2个类别和所有1个类别,如下所示Ruby on rails 继续搜索,直到达到极限,ruby-on-rails,ruby-on-rails-3,search,ruby-on-rails-3.2,Ruby On Rails,Ruby On Rails 3,Search,Ruby On Rails 3.2,我有一个搜索,可以找到所有3个匹配的类别、所有2个类别和所有1个类别,如下所示 def self.three_matching_cat(rel) cats = rel.prefs.map {|p| p.category_id} self.where(:category_id => cats).group(:name).having("count(*) >2").map {|p| p.name} end 我想做的是将结果总数限制为10个,但要确保返回所有包含3个匹配类
def self.three_matching_cat(rel)
cats = rel.prefs.map {|p| p.category_id}
self.where(:category_id => cats).group(:name).having("count(*) >2").map {|p| p.name}
end
我想做的是将结果总数限制为10个,但要确保返回所有包含3个匹配类别的结果,并且只继续搜索,直到找到总共10个结果
谢谢大家! 所以我最后做的就是把所有数组相加,然后切片。即:
(a + b + c)[0,10].uniq
我过去曾用这种方法来解决这类问题,但我仍然对更好的方法感到好奇。