MongoDB嵌套对象数组后查询

MongoDB nested object array post query

本文关键字:查询 数组 对象 嵌套 MongoDB      更新时间:2023-09-26

我无法将数据插入MongoDB。我有以下代码。我试过很多类似的答案,但都不适用

架构-问题.js

var questionsSchema = mongoose.Schema({
question: String,
quizdetails: String,
answers: {id:{type: String},text: { type: String }},
correctanswer: String,
feedback: String
});

路由器-问题.js

router.post('/',jsonParser, function(req, res, next) {
 console.log(req.body);
}

退货

{ question: 'quiz title',
  quizDetails: 'quiz description',
  answers:
   { '0': 'Answer 1',
     '1': 'Answer 2',
     '2': 'Answer 3',
     '3': 'Answer 4' },
  correctAnswer: 2,
  quizFeedback: 'Feedback' }

回调

module.exports.createQuestion = function(newQuestion, callback) {
  newQuestion.save(callback);
}

我会将答案类型设置为Array:

answers: Array

那么退货文档应该是(我们将在集合中插入的文档)

{ question: 'quiz title',
  quizDetails: 'quiz description',
  answers: ['Answer 1',
            'Answer 2',
            'Answer 3',
            'Answer 4'],
  correctAnswer: 2,
  quizFeedback: 'Feedback' }