2011-10-14 197 views
0

我用這個把我的哈希:獲取元素

@hotels = Hotel.all 

返回: [酒店1,飯店2 ...]

如何從這個哈希提取例如酒店ID = 10?

謝謝你的幫助。

+1

Hotel.all返回一個數組,而不是散列。爲什麼不選擇Hotel.find(10)? – tokland

回答

2

從數組中找到一個單一的元素:

@hotels.find { |h| h.id == 10 } 
#=> Hotel10 

你可能會更好做Hotel.find(10)來代替,雖然。

1
@hotels.select{|h| h.id==10} 
#=>[Hotel10] 
+0

這不完全正確。 @ hotels.select返回一個數組,所以正確的結果值是'[Hotel10]' –

+0

非常正確 - 爲了清晰起見編輯答案 - 謝謝 – chrispanda