MongoDB 嵌套对象数组后查询

Posted

技术标签:

【中文标题】MongoDB 嵌套对象数组后查询【英文标题】:MongoDB nested object array post query 【发布时间】:2016-09-05 13:53:45 【问题描述】:

我无法向 MongoDB 插入数据。我有以下代码。我尝试了许多类似的答案,但对我没有用。

架构 - question.js

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

路由器 - questions.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);

【问题讨论】:

哪些答案不适合您?你说你尝试了几个。 我试过这个***.com/questions/21248696/…和***.com/questions/10522347/… 【参考方案1】:

我会将答案类型设为数组:

answers: Array

然后返回文档应该是(我们将在集合中插入的文档)

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

【讨论】:

以上是关于MongoDB 嵌套对象数组后查询的主要内容,如果未能解决你的问题,请参考以下文章

带有 elemMatch 的 MongoDB 查询,用于从对象内部匹配嵌套数组数据 [重复]

Mongodb查询过滤文档中的嵌套对象数组

mongodb 查询求助,嵌套数组里面查东西

如果 mongodb 中嵌套数组的对象没有字段,则显示默认值

Mongodb:查询嵌套数组的大小

Mongodb多层嵌套数组如何精确查询(内容处为格式化的json截图,评论里面是json的内容)?