Mongoose在静态函数中创建一个新对象

时间:2015-10-13 01:33:38

标签: node.js mongodb mongoose schema

如何在架构中定义的静态方法之一中创建新对象?

我基本上有

UserSchema.statics.createUser = function (username, password, cb) { .. }

我希望能够在函数中保存用户对象的新实例。我希望在该方法中执行var user = new User(...)之类的操作,但它当然不起作用,因为尚未创建用户模型。

我该怎么办?

1 个答案:

答案 0 :(得分:13)

当您第一次调用静态函数时,此绑定到架构的模型。你可以这样做:

   var newUser = new this({
        username: username, 
        password: password,
    });
    newUser.save(cb);

请注意,如果您将静态功能创建为匿名胖箭头功能,将无法正确设置。