ruby on rails连接两个活动记录对象

djb*_*ick 1 ruby ruby-on-rails

我有两个复杂的rails(AR)查询来自我有时想要连接的两种不同的方法.在每个对象中返回的数据结构是相同的,我只想将一个附加到另一个对象上.

这是一个简化的例子(不是我的实际代码):

 @peep1 = Person.find(1)

 @peep2 = Person.find(2)
Run Code Online (Sandbox Code Playgroud)

认为这样的事情会起作用:

 @peeps = @peep1 << @peep2
Run Code Online (Sandbox Code Playgroud)

或这个

 @peeps = @peep1 + @peep2
Run Code Online (Sandbox Code Playgroud)

以上只是一个简单的例子 - 加入查询等在我的情况下不起作用.

编辑: 也许连接是错误的术语.

这是我想要的输出:

说@ peep1有:
first_name:Bob
last_name:Smith

和@ peep2有:
first_name:Joe
last_name:Johnson

我希望将这些组合成第三个对象.因此,如果我遍历@peeps,它将包含来自两个先前对象的数据:

@peeps具有:
first_name:Bob
last_name:Smith
first_name:Joe
last_name:Johnson

谢谢!

Joh*_*hir 6

坦率地说,你所描述的一切都没有任何意义:)

@peep1并且@peep2每个对象代表一个对象 - 数据库中的一行.

没有任何意义可以将它们有意义地结合起来.

你可以制作两者的数组.

@all_peeps = [@peep1, @peep2]
Run Code Online (Sandbox Code Playgroud)

然后迭代它.

@all_peeps.each do |peep|
  print peep.first_name
end
Run Code Online (Sandbox Code Playgroud)