场景如下:
一个product
可以多orders
,一个order
可以有很多products
。如何使用mongoose
和node.js
构建多对多关系?
我在下面给出了产品型号。但是,我不确定订单模型应该如何。有人可以帮我解决这个问题吗?我是Node/猫鼬的新手,希望有人能帮助我解决这个问题。
法典
var mongoose = require('mongoose');
var productSchema = mongoose.Schema({
product:{
type: String,
unique: true,
required: true
},
price:{
type: String,
required: true
},
create_date:{
type: Date,
deault: Date.now
}
});
这是我的产品型号
var mongoose = require('mongoose');
Schema = mongoose.Schema;
var productSchema = mongoose.Schema({
product:{
type: String,
unique: true,
required: true
},
price:{
type: String,
required: true
},
create_date:{
type: Date,
deault: Date.now
}
});
var Product = mongoose.model('Product', productSchema);
module.exports = product;
此订单模型
var mongoose = require('mongoose');
Schema = mongoose.Schema;
var orderSchema = mongoose.Schema({
orderNumber:{
type: Number,
required: true
},
products:[{type:Schema.Types.ObjectId, ref:'Product'}]
create_date:{
type: Date,
deault: Date.now
}
});
var Order = mongoose.model('Order', orderSchema);
module.exports = Order;
我的 JSON 结果像这样
产品:
{
_id:1
product:"test",
price:100,
create_date:"20/11/91"
}
次序:
{
orderNumber:123
product: [1] (ref of product id)
create_date:"20/11/91"
}