2014-11-04 43 views
0

我有一個叫做房屋的模型,我需要得到一個房屋列表,比如'@houses = House.where(...)'如何使用while和直到軌道上的活動記錄循環?

然後用一些方法檢查它們(不僅僅是一個簡單的在那裏),直到我將得到匹配的記錄(當方法返回true時)。

我到目前爲止只使用過每個。如何使用UNTIL或WHILE循環檢查列表中的下一條記錄?

感謝

回答

2

你爲什麼不使用Enumerable#detect爲了這個目的?

@houses = House.where(...) 
@house = @houses.detect { |h| your condition here } 
+0

如果使用'Enumerable',則可以使用其[檢測](http://ruby-doc.org/core-2.1.4/Enumerable.html#method-i-detect)方法相反,它返回集合中的第一個對象,該塊返回true對於 – yoavmatchulsky 2014-11-04 10:14:17

+0

@yoavmatchulsky你是對的,我誤解了這個問題。 – 2014-11-04 10:16:24

+0

這似乎是工作,謝謝 – ktw16 2014-11-04 10:30:12

0
@houses = House.where(...) 
status = @houses.detect { |h| your condition here }.present? 
return for you true/false