使用 mongoose 将对象附加到 mongoDB 中的对象数组
Posted
技术标签:
【中文标题】使用 mongoose 将对象附加到 mongoDB 中的对象数组【英文标题】:append object to array of objects in mongoDB using mongoose 【发布时间】:2021-06-04 21:04:38 【问题描述】:这是我在猫鼬中的架构
const companySchema = new mongoose.Schema(
country:
type: String,
required: true
,
username:
type: String,
unique: true,
required: true
,
password:
type: String,
required: true
,
vaccine: [
name: String,
price: Number,
availibility: Number,
needed: Number
]
,
timestamps: true
);
我创建了一个表单,它提供疫苗对象的输入(名称价格可用性和需要),其数据可在 req.body 中获得。如何使用猫鼬附加它?
【问题讨论】:
如果您需要更新数组中除插入之外的特定对象,请通知我 【参考方案1】:只需使用 findOneAndUpdate() :
let vaccine = ... // you object trying to add
let filter = ... // your filter you are trying to target the collection
Company.findOneAndUpdate(filter, $addToSet: vaccine: vaccine)
如果您想获得更新后的结果,只需使用 new :true。
完整示例:
let company = await Company.findOneAndUpdate(filter, $addToSet: vaccine: vaccine, new:true)
【讨论】:
以上是关于使用 mongoose 将对象附加到 mongoDB 中的对象数组的主要内容,如果未能解决你的问题,请参考以下文章
Mongoose、Cygwin 和 MongoDB - 不保存