如何将ActiveRecord_Relation转换为rails中的普通数组

时间:2016-03-16 09:47:16

标签: ruby-on-rails arrays ruby activerecord

我有一个返回活动记录关系的模型。如何将此活动记录关系转换为普通的ruby数组?

2 个答案:

答案 0 :(得分:4)

如果您的关系需要一个或多个模型属性的数组,那么您可以使用ActiveRecord::Calculations#pluck

来自文档:

Person.pluck(:id)
# SELECT people.id FROM people
# => [1, 2, 3]

Person.pluck(:id, :name)
# SELECT people.id, people.name FROM people
# => [[1, 'David'], [2, 'Jeremy'], [3, 'Jose']]

还有更多你可以做的事情。

答案 1 :(得分:3)

Relation有to_a方法,就是这样做的。它在内部用于any?

等方法