使用$ push和$ set更新mongoose模型数组

时间:2014-09-28 21:06:14

标签: node.js mongodb mongoose

我和mongoose一起工作。 我正在尝试更新我的联系人模块:

var ContactSchema = mongoose.Schema({
name : String,
phone : String,
id : String,
plans : [{
    name : String
    }] });

在我的代码中我做了:

var uuid = require('node-uuid');
var url = require("url");
var mongoose = require('mongoose');
var querystring = require("querystring");
var Contact = mongoose.model('Contact', require('D:/DEVELOPMENT/ANDROID_WORKSPACE/HapiServer/models/ContactSchema'));  
function handle(req, replay) {
var b = req.payload;
var excistingPhones = [];
var length = b.invitedList.length;
b.invitedList.forEach(function(value) {
    console.log("plan: "+b.name);
    var query = { phone: value.phone };

    Contact.update(query, {
         $push : {
                plans :  {
                    name: b.name
                       } 
              }
            });
    });
}
exports.handle = handle;

我尝试对数据库进行简单的更改:

Contact.update (query,
            {
         $set: { id: '11111' }
            });

但没有反应。

为什么我的db不会改变?

谢谢。

更新解决方案:

我找到了解决方案。更新没有用。 所以我做了找到功能然后我改变了在find函数中找到的联系人实例并保存了。

0 个答案:

没有答案