【问题标题】:mongoose supplying upsert=true erroring out猫鼬提供 upsert=true 错误输出
【发布时间】:2015-07-06 11:18:50
【问题描述】:

我是第一次使用 mongoose,并像下面这样声明了我的会话模型

var mongoose = require('mongoose');
var Schema = mongoose.Schema;

var sessionSchema = new Schema({
    session_id : String,
    users : [{
        user_id : String,
        user_type : String,
    }],
    start_time : Date
});


var SessionInfo = mongoose.model('SessionInfo', sessionSchema);

module.exports = SessionInfo

现在我正在尝试更新用户数组,每当用户以相同的会话 ID 加入我的套接字服务器时,用户详细信息都应该得到更新

下面是代码

    newSession.update({session_id : sessionId},
    {$push: {users : 
        {user_id : userId, 
        user_type : userType}
    }},
    {safe: true, upsert: true},   
    function(err,model){
        console.log(err);
    });

但是每当客户端连接到节点 js 服务器时,我都会遇到以下错误

2015 年 4 月 28 日星期二 01:53:07 GMT+0530 (IST) 已接受连接。

/home/rahulshr/node_modules/mongoose/lib/query.js:1878 oldCb(error, result ? result.result : { ok: 0, n: 0, nModified: 0 }); ^ TypeError:对象不是函数 在 Query.callback (/home/rahulshr/node_modules/mongoose/lib/query.js:1878:7) 在/home/rahulshr/node_modules/mongoose/node_modules/kareem/index.js:167:19 在/home/rahulshr/node_modules/mongoose/node_modules/kareem/index.js:103:16 在 process._tickCallback (node.js:415:13)

【问题讨论】:

    标签: node.js mongodb mongoose


    【解决方案1】:

    我找到了根本原因,而不是使用 Session 模式的实例(在本例中为 newSession)调用 update 我应该使用 SessionInfo 调用它

    【讨论】:

      猜你喜欢
      • 2022-12-10
      • 2013-06-19
      • 2012-08-09
      • 1970-01-01
      • 1970-01-01
      • 2017-10-11
      • 1970-01-01
      • 2015-01-10
      • 2017-05-03
      相关资源
      最近更新 更多