这是我的模型中的架构。
const applicantEvaluationSchema = new mongoose.Schema(
{
applicantIdx: Number,
application: {
comments: [
{
userIdx: Number,
comment: String,
createdAt: Date,
},
],
evaluations: [
{
userIdx: Number,
point: Number,
},
],
},
interview: {
comments: [
{
userIdx: Number,
comment: String,
createdAt: Date,
},
],
evaluations: [
{
userIdx: Number,
point: Number,
},
],
},
}
);
我想在application.comments中发表评论
我认为克隆数组,推送我的评论并更新
但我认为推动对象的方法更好。
我该如何解决?
答案 0 :(得分:0)
您可以将Model.update
与$push
运算符一起使用:
//Your model
ApplicantEvaluation.update(
{ /* selection criteria */ },
{
$push: {
'application.comments': /* new comment object */
}
}
);
使用$push
运算符,您可以提供要推送到的字段和新对象。如果您有嵌套字段,请使用点语法访问该字段。由于comments
数组嵌套在application
内,请使用'application.comments'
。