Я строю систему «Тест». у каждого теста есть некоторые вопросы. Каждый вопрос имеет ответы.MongoDB: Как вставить сложную схему
Я получаю JSON, чтобы создать вопрос с другого сервера, как:
{
requestType: 'CreateNewQuestion',
questionId: 17447,
subject: "Math",
subsubject: "Heshbon",
questionText: "1+4 Equels?",
answers: [{text : "2",rightAnswer : false},
{text : "35",rightAnswer : false},
{text : "5",rightAnswer : true},
{text : "9",rightAnswer : false}]
}
Я построил 2 Schemas:
module.exports = mongoose.model('Answer' ,
{
text: String,
rightAnswer: Boolean
}
);
И
module.exports = mongoose.model('Question' ,
{
questionId: Number,
subject: String,
subsubject: String,
questionText: String,
answerTimeAvg: Number,
fastestAnswer: Number,
answers: [{ type : mongoose.Types.ObjectId, ref: 'Answer' }]
}
);
Я сделал функцию, получить JSON и попытаться сохранить его люблю:
var QuestionSchema = require('./schemas/question');
var AnswerSchema = require('./schemas/answer');
CreateNewQuestion: function (message) {
var information = {
questionId: message.questionId,
subject: message.subject,
subsubject: message.subsubject,
}
//Save Question
var record = new QuestionSchema(information);
record.save(function (err) {});
}
Как я могу создать ответы объект и заселить их в вопрос?
Я пытался несколько вещей, но получаю сообщение об ошибке,
Что такое правильный путь?
Я пытался читать «mongoosejs.com/docs» но сайт вниз :(
Ваш пример показывает документ 'answers' содержащий встроенные вложенные документы, но ваша схема определяет его как массив ссылок вместо Что является правильным – JohnnyHK
Оба :).?. Я получаю полный Json, но я хочу разделить его на 2 модели. –