だからここから始めましょう...これはmongoシェルにあります
db.questions.insert({name:"jwo", responses:[{question:"your name?", answer:"yomamma"}, {question:"your name?", answer:"pappa"}]});
これにより、次のようなドキュメントjson構造が作成されました。
> db.questions.findOne();
{
"_id" : ObjectId("4d877e89b75dc42c4709278d"),
"name" : "jwo",
"responses" : [
{
"question" : "your name?",
"answer" : "yomamma"
},
{
"question" : "your name?",
"answer" : "pappa"
}
]
}
次に、回答をループし、question_idに質問の_idを設定して、新しい回答コレクションに挿入します。
> for(i=0; i<question.responses.length; ++i){
... question.responses[i].question_id = question._id;
... db.responses.insert(question.responses[i]);
... }
> db.responses.findOne();
{
"_id" : ObjectId("4d878059b75dc42c4709278e"),
"question" : "your name?",
"answer" : "yomamma",
"question_id" : ObjectId("4d877e89b75dc42c4709278d")
}
db.questions.findOneを変更して、それらすべてを検索し、ループする必要があります。これに時間がかかる場合は、map-reduce機能に切り替える必要があるかもしれません。