只是需要一个特殊符号$
代表匹配某一项
数据库设计如下:
核心代码如下:
// 回答试题public async userPaperAnswer(request: IRequest, _h: IResponse) {const { user_paper_id, question_id, option_user } = request.payload;const updOne = await UserPaper.updateOne({ _id: user_paper_id, 'questions.question': question_id },{$set: {'questions.$.option_user': option_user,},},).catch((err) => {console.log(err);});return {code: 1,msg: '回答成功',data: updOne,};}
}