私はまだNode、Mongoose、Mongoを初めて使用しますが、少なくともあなたの質問の一部に対処できると思います。 :)
あなたの現在の方法は私が最初にやろうとしたのと同じです。基本的に、これと非常によく似た方法で保存されます(CoffeeScriptがわからないため、JSで記述されています):
var todoListSchema = new mongoose.Schema({
name: String,
todos: [{
name: String,
desc: String,
dueOn: Date,
completedOn: Date
}]
});
後で私が探していたこの方法を見つけました。あなたが意図していたことだと思います:
var todoListSchema = new mongoose.Schema({
name: String,
todos: [{
type: mongoose.Schema.Types.ObjectId,
ref: 'Todo' //Edit: I'd put the schema. Silly me.
}]
});
これにより、ObjectIdの配列が格納され、Query#populate
を使用して読み込むことができます。 マングースで。
技術的な意味はわかりませんが、別々にしておくと脳内でより理にかなっているので、それをやっています。 :)
編集:ここに役立つかもしれないいくつかの公式ドキュメントがあります: http://mongoosejs.com/docs/ Populate.html