我在rails 3应用中使用Ernie Miller's Metasearch并遇到了问题。
在我的模型中
class Prospect < ActiveRecord::Base
has_many :steps
在我的控制器中
@search=Prospect.search(params[:search])
在我看来(搜索表格)
<%= f.date_select :steps_updated_at_greater_than%>
这样可以让我获得自date_select以来已更新步骤的所有前景。我的问题是,如果有多个更新的步骤,我会在@search中获得重复项,当我在视图中格式化搜索结果时,我不想要这样做。
我的问题是从@search删除重复项的最佳方法是什么?或者首先防止将重复项添加到@search?
答案 0 :(得分:2)
@search=Prospect.search(params[:search]).select('DISTINCT step_id')
答案 1 :(得分:2)
@search = Prospect.search(params[:search])
@prospects = @search.relation.uniq
答案 2 :(得分:1)
你想:
@search = Prospect.search(params[:search])
@search.relation.select("DISTINCT(step_id), prospects.*")