Ruby on rails Ruby mongo-数组映射添加另一个字段

Ruby on rails Ruby mongo-数组映射添加另一个字段,ruby-on-rails,ruby,Ruby On Rails,Ruby,我有一个MongoDB模型,比如: Posts: id, category, data[title, description, slug..] 我正在将数据添加到我的_数组,但现在我需要添加类别字段 my_array = [] my_array[:posts] = Posts.all.to_a.map { |p| p.data } 如何合并它们以查看此结果 my_array: {[ category1, title1, description1, slug1], [ category2

我有一个
MongoDB
模型,比如:

Posts: id, category, data[title, description, slug..]  
我正在将数据添加到
我的_数组
,但现在我需要添加
类别
字段

my_array = []

my_array[:posts] = Posts.all.to_a.map { |p| p.data }
如何合并它们以查看此结果

my_array: {[ category1, title1, description1, slug1], [ category2, title2, description2, slug2]}
因此,我想将category字段推到同一个数组中,但我不知道如何更改此查询

 my_array[:posts] = Posts.all.to_a.map { |p| p.data }

如果要将类别合并到哈希,则需要获取数据,然后将类别键与类别合并

my_数组[:posts]=posts.all.to_a.map{p | p.data.merge(category:p.category)}

您能解释一下要合并什么吗?是否要将多个数组与所有字段合并为一个大数组?否,我要将“类别”字段添加到我的_数组中。但是类别和数据数组应该是同一级别的..我可以做我的_数组[:posts]=posts.all.to_a.map{| p | p}并获得所有的posts,但是如果我这样做,数据和类别将不在同一级别。我已经尝试过了,但无法获得类别字段。您可以发布您从一条记录中实际获得的内容,并发布记录的列吗?实际上,我将其放入数组中,但类似于:[{'title'=>'a','description'=>'a'},BSON::ObjectId('60715018bee8403af3a10dd11'),如果您检查我的答案,category_id是一个bson对象。但它与其他数据不在同一水平上。它不在同一个花括号中..您能在
BSON::ObjectId('60715018bee8403af3a10dd11')
上调用
.str
,并取回值吗?