Ruby / Rails:如何从具有属性的数组中获取对象

时间:2018-07-18 18:19:24

标签: ruby-on-rails

我的问题很简单,我有:

@users = User.first(100)

如何从 @users 数组中获取ID为 50 的用户对象?

3 个答案:

答案 0 :(得分:2)

使用detect

user = @users.detect { |u| u.id == 50 }

如果您不需要其余99条记录,则有ways只提取一条记录(id为50)。

答案 1 :(得分:1)

如果您想进行ActiveRecord查找,可以这样做:

@users = User.find_by_id(50)

或者,如果您想进行Array查找,则可以执行以下操作:

@users.find_all { |user| user.id == 50 }

答案 2 :(得分:0)

我自己找到了解决方案,但我会等到其他人告诉我们哪个答案更好。

@users.find {|u| u.id == 50 }

感谢您的回答!