我有一个关于mongoDB的问题,即猫鼬:
假设我有2个型号:1)产品型号2)用户型号
const ProductSchema = new Schema({
title: String,
description: String,
product_type: String,
image_tag: String,
created_at: Number,
price: Number
});
const Product = module.exports = mongoose.model('product', ProductSchema);
const UserSchema = new Schema({
login: String,
email: String,
password: String,
purchases: [{
type: Schema.Types.ObjectId,
ref: 'product'
}]
});
const User = module.exports = mongoose.model('user', UserSchema);
当用户购买某些商品时,我只是在用户模型中将产品添加到购买数组(使用推送方法) . 如果我需要将购买的ID与其完整描述相匹配,我会使用填充 .
问题是我需要以某种方式控制用户进行的每次购买的数量 - >我需要在数组中的每个购买对象中添加额外的字段...类似于数量或总数,如:
const UserSchema = new Schema({
...
purchases: [{
type: Schema.Types.ObjectId,
ref: 'product',
quantity: {
type: Number,
default: 1
}
}]
});
我陷入困境,并不知道如何实现这一点 . 上面的例子不起作用 .
1 回答
试试这个,这种方式肯定会起作用: