通过(sails js)水线将值推入MongoDB数据库数组中

节点js,风帆js,水线。 我需要在插入后将值更新(或推送)到下面的模式中

我正在使用waterline和mongodb的sailsjs。

{ "countries": { "states": [ { "statename": "state", "districts": [ { "distname": "district", "cities": [ { "cityname": "Hyderabad", "places": [ { "placename": "hitechcity" } ] } ] } ] } ] } } 

我需要知道如何更新它,我需要更新后这样的事情

 { "countries": { "states": [ { "statename": "state", "districts": [ { "distname": "district", "cities": [ { "cityname": "Hyderabad", "places": [ { "placename": "hitechcity" }, { "placename": "someother place" } ] } ] } ] } ] } } 

请有人帮助我。

好问题! 你需要find()然后save()相关的模型实例:

 User.findOne(23).exec(function (err, user) { user.roles.push({ /* whatever */ }); user.save(function (err) { /* all done */ }); }); 

完成我的电话,对任何错误感到抱歉:)

我发现,用帆我不能使用mikermcneil的答案。 我必须去当地人:

 Runtestunit.native(function(err, runtestunit){ runtestunit.find({sessionID : sessionData.id_}).toArray(function(err, results) { if (err) return res.serverError(err); runtestunit.update({ _id: results[0]._id }, { $push: { screenshots: filename } }, function(err, screenshots) { if(err) sails.log.err( err) else sails.log.info("Item pushed") }) }); }); 

仅供参考我正在通过sessionData.id_键查询我的数据