2011-04-08 101 views
4

我在rails 3應用程序中使用了Ernie Miller's Metasearch,並且遇到了問題。Rails中的唯一搜索結果

在我的模型

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中?

回答

1

你想:

@search = Prospect.search(params[:search]) 

@search.relation.select("DISTINCT(step_id), prospects.*") 
+0

這個工作對me..and更重要的是我現在明白它是如何worked.Thank了很多的幫助球員,這是我逼瘋。 – DomWolfe 2011-04-08 16:19:19

+0

沒問題@DomWolfe,祝你好運! – 2011-04-08 16:21:37

2
@search=Prospect.search(params[:search]).select('DISTINCT step_id') 
2
@search = Prospect.search(params[:search]) 
@prospects = @search.relation.uniq