Mongodb:一次更新同一文档中多个数组的元素
我用$push
来更新一个数组的元素。 但是,当我试图更新多个数组的元素保持$push
逗号分隔值如下,这是显示一个错误。 它是如何完成的?
var conditions = { some condition }; var update = { $push : {Feedback : { Feedbacks:req.body.Feedbacks}}, {Strength : { Strengths:req.body.Strengths}}}; var options = { multi : true}; Model.update(conditions, update, options, callback);
架构是:
Model : { Field1 : { type:Number }, Field2: { type : String }, Feedback : { type: Array, Default:[] }, Strength : { type: Array, Default: [], } };
注意:它正在为一个数组更新(如果我保留只有反馈数组后推),但不适用于多个数组更新。 如何做多个数组?
在mongodb中的一个更新调用中推送到两个单独的数组
Model.update( conditions, updates, options, callback ) var updates = { $push : { Feedback : { $each: req.body.Feedbacks }, Strength : { $each: req.body.Strengths } } }
{ $push: { <field1>: <value1>, <field2>: <value2> } }
即
$push : { Feedback : { $each: req.body.Feedbacks }, Strength : { $each: req.body.Strengths } }