2012-04-12 68 views
0

我有一個查詢中的Rails這樣不同的元素:獲得從Rails的ActiveRecord的查詢

@addresses=People.select("first_name, state").where("first_name = 'Bob'") 

有沒有一種方法,我可以遍歷地址並拉出不同的狀態,讓我知道哪一個名叫bob的人活着?

我試圖避免:

@states = [] 
@address.each.do |add| 
    if [email protected]?(add.state) 
    @states.push add 

這似乎只是不好的形式。

回答

5
@states = People.where(first_name: 'Bob').uniq.pluck(:state) 
+0

所以最好只是重新運行數據庫查詢? – 2012-04-12 20:20:35

+0

返回類型 - 唯一狀態的數組。你想「拉出不同的州」。這正是代碼所做的。 – jdoe 2012-04-12 20:21:49