我收到了一个ActiveRecord Relation,但是我需要访问数组中的对象。

时间:2016-08-03 09:48:46

标签: ruby-on-rails arrays object activerecord

我正在使用rails web应用程序并收到了ActiveRecord关系,但是我需要访问数组中的所有对象。有没有一种简单的方法来实现这一点,因为我找不到任何在线帮助。

这是ActiveRecord返回其中的对象,但我需要包含其中所有对象的数组。干杯

[#<ActiveRecord::Relation [#<Chapter id: 995, description: "hello world", created_at: "2016-08-03 09:43:50", updated_at: "2016-08-03 09:43:50", adventure_id: 787, parent_choice_id: 672>]>]

1 个答案:

答案 0 :(得分:0)

.to_a是解决方案。 (http://edgeapi.rubyonrails.org/classes/ActiveRecord/Relation.html#method-i-to_a

但你真的应该保持关系,因为你可以使用findwhere等方法和其他东西。

但ActiveRecord :: Relation几乎响应了数组所做的一切。像each一样如下:

# assume that @objects is an ActiveRecord::Relation
@objects.each do |obj|
  puts obj.id
end

编辑: 我刚刚看到你的关系在一个数组中。你知道吗?