を節約しながら、私はサブドキュメントを作成するために、配列の要素をプッシュする、プッシュサブドキュメント内の配列のすべての要素を文書
私のスキーマ
var chatGroup = new Schema({
name : {
type : String,
default : null
},
members: {
type : [subSchemaForMember]
},
}、{コレクション:「chatGroup」});
するvar subSchemaForMember =新しいスキーマ({
user_id : {type : Schema.Types.ObjectId , ref : 'user'}},{_id : false});
が
文書を保存するには、私のクエリがある
var chatGroup = new ChatGroup({
name : req.body.name,
image : req.body.image,
created_by : req.body.celebrity_id,
$pushAll : {'members' : req.body.members}
})
どこreq.body.memebers = [ 'someid'、 'someid'、 'someid' ]
を私はONL、あなたが実際に文書を保存表示されていない任意のループ
をちょうど 'subSchemaForMembers'です:ノートのも
は、現在のマングースのドキュメントが
$pushAll
が廃止されていることを示し、あなたが$each
と一緒$push
を使用する必要がありますが、同じルールが適用され、ここを参照してくださいということです文字列?それはあなたが少なくとも 'req.body.members = ['someId'、 'someId'、 'someId']'と言ったときにあなたが表現しているものです。 – Kevinつまり、メンバー:{type:[String]} 'ですか? – Kevin
メンバー:[{user_id:{type:Schema.Types.ObjectId、ref: 'user'}、}]このサブ文書のようなもの –