2010-01-13 22 views
5

我發現自己需要這個。假設購物車是一個包含用戶列表的模型。一個協會的Rails索引

def index_of_item 
cart.users.each_with_index do |u, i| 
    if u == current_user 
    return i 
end 
end 

什麼是更容易的方式來獲得這樣的協會索引?

回答

10

index方法在Array方法與您的index_of_item方法相同,例如,

cart.users.index(current_user) 

返回數組中第一個對象的索引,即==爲obj。如果找不到匹配,則返回nil

+0

我用find_index,但看起來像這些做同樣的事情。謝謝! – cmaughan 2010-01-14 08:26:53

+0

是的,它看起來像1.8.7 find_index已被添加到Enumerable和Array#索引現在只是一個別名。 – mikej 2010-01-14 15:40:09