如何在RubyonRails中检查数组中的属性
我需要找出在ruby中接受数组的where语句中是否存在特定属性 我试着像下面一样如何在RubyonRails中检查数组中的属性,ruby,ruby-on-rails-3,Ruby,Ruby On Rails 3,我需要找出在ruby中接受数组的where语句中是否存在特定属性 我试着像下面一样 User.where(id: [1,2,3]).include?('address') User.where(id:[1,2,3])将返回一个关系(其行为类似于数组,但这是另一回事)。这意味着,这是由对象组成的,User类的实例 检查此集合是否包含字符串('address')。现在你可能已经猜到了,事实并非如此 如果需要按地址映射所有用户,可以使用: 您可以使用:User.where(id:[1,2,3]).m
User.where(id: [1,2,3]).include?('address')
User.where(id:[1,2,3])
将返回一个关系(其行为类似于数组,但这是另一回事)。这意味着,这是由对象组成的,User
类的实例
检查此集合是否包含字符串('address'
)。现在你可能已经猜到了,事实并非如此
如果需要按地址映射所有用户,可以使用:
您可以使用:
User.where(id:[1,2,3]).map(&:address)
返回包含地址的数组
如果希望数组的值为true或false,则可以使用User.where(id:[1,2,3]).map(&:address).map(&:present?)
User.where(id: [1,2,3]).pluck(:address)