すべてのサブ文書のためのObjectIdを作成しない:マングース自己参照されるスキーマは、このように、私は自己参照されたフィールドを持っているマングースでスキーマを持っている
var mongoose = require('mongoose');
var CollectPointSchema = new mongoose.Schema({
name: {type: String},
collectPoints: [ this ]
});
CollectPointオブジェクトが挿入されたとき:
{
"name": "Level 1"
}
それは大丈夫だ期待のように、結果は次のとおりです。
{
"_id": "58b36c83b7134680367b2547",
"name": "Level 1",
"collectPoints": []
}
しかし、私は自己参照サブドキュメンタリーを挿入したとき子供CollectPointSchema
の_id
どこにあるの
{
"_id": "58b36c83b7134680367b2547",
"name": "Level 1",
"collectPoints": [{
"name": "Level 1.1"
}]
}
:メントは、
{
"name": "Level 1",
"collectPoints": [{
"name": "Level 1.1"
}]
}
これは私に与えますか?私はこれが必要_id
。あなたの埋め込まれたCollectPoint
項目宣言するときは、新しいオブジェクトを構築する必要があり
私は[この再帰関数](https://gist.github.com/GSchutz/100358d4a614b563da29e72c5f8cd5e9)でこの問題を解決します。 – Guilherme