我正在创建一个网络应用,用户可以在其中创建问题。每次用户创建问题时,都应创建一个集合,其中该问题的所有答案都应保存为该集合中的文档。
答案 0 :(得分:-1)
您可以使用mongodb ORM - mongoose
来制作您的数据模型
var mongoose = require('mongoose')
, Schema = mongoose.Schema
var questionSchema = Schema({
title : String,
text : String,
user : { type: Schema.Types.ObjectId, ref: 'User' },
answers : [{ type: Schema.Types.ObjectId, ref: 'Answer' }]
});
var answerSchema = Schema({
user : { type: Schema.Types.ObjectId, ref: 'User' },
text : String,
});
var Question = mongoose.model('Question', questionSchema);
var Answer = mongoose.model('Answer', answerSchema);
因此,您将在问题中存储答案ID数组并填充数据:
Question.findOne().populate('answers').exec(function(err, doc){
console.log(doc.answers) // here populated answers models
})
此外,您还需要描述用户模型并使用其他数据扩展问题和答案