在mongoose一对多的映射,如何接收和处理?

我遇到的问题是与mongoose(Mongodb)一对多映射。 一个是订单(买方数据),许多是物品(价格,数量等)。

1)我应该如何创build订单和项目的架构,就像我应该把这些项目放在一个数组中?

2)所有的数据将在一个职位function?

我牛群你可以使用ObjectId来连接多对一,但我不知道如何。

由于一个订单听起来会有一个相对较less的项目,最简单的事情可能只是项目ID的列表:

var OrderSchema = new mongoose.Schema({ items: [{type: mongoose.Schema.Types.ObjectId, ref: 'Item'}] }); var ItemSchema = new mongoose.Schema({ price: Number, quantity: Number }); 

大多数UI不会在单个POST函数中构build完整的订单,所以最好允许创build一个订单,然后通过order.items.push(itemId)向其中添加项目。