2012-05-03 40 views
0

我有哈希陣列,我想檢查的公共字段,它存在於所有的散列如何獲得數組中的公共輸出?

@a = current_user.ser.collect{|x| x.team == "sect"} 

[true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true] 

我用collect方法和布爾運算符,以便在輸出其給予陣列現在我想的單一輸出一樣,如果有在整個陣列1假值,所以應該返回false僅

回答

0

你可以做到以下幾點:

res = true 
current_user.ser.each{|x| res = res & (x.team == "sect")} 
3

嘗試:

current_user.ser.all?{|x| x.team == "sect"} 

而且x.team並不像哈希符號。你確定你提供了正確的代碼/描述嗎?