0

我有两个 mongoid 文档,Class1并且Class2都有subject字段现在我可以像这样按主题从各个类中获取结果

@class1_subject = Class1.all.group_by {|s| s.subject }

@class2_subject = Class2.all.group_by {|s| s.subject }

现在 @class1_subject 包含 =>

{
  "algebra" => [
    #<Class1 _id: 51af35f4066104e046000003, name: "root", subject: "algebra">
  ],
  "algebra-II" => [
    #<Class1 _id: 51af3da0066104f448000003, name: "roo2", subject: "algebra-II">
  ]
}

@class2_subject 包含 =>

{
  "algebra" => [
    #<Class2 _id: 51af07d606610423e7000002,.........,subject: "algebra">
  ]
}

工会后我期待这个结果

{
  "algebra" => [
    #<Class1 _id: 51af35f4066104e046000003,name: "root", subject: "algebra">,
    #<Class2 _id: 51af07d606610423e7000002,.........,subject: "algebra">
  ],
  "algebra-II" => [
    #<Class1 _id: 51af3da0066104f448000003, name: "roo2", subject: "algebra-II">
   ]
}

我怎样才能做到这一点??

4

1 回答 1

1

这可以是一个近似值:

@class1_subject.keys.each do |key|
  @class2_subject[key] ||= []
  @class2_subject[key] += @class1_subject[key]
end  

@class2_subject 现在有结果了

于 2013-06-06T10:08:09.503 回答