gpt4 book ai didi

node.js - Mongoose 在静态函数中创建一个新对象

转载 作者:IT老高 更新时间:2023-10-28 13:24:43 28 4
gpt4 key购买 nike

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

我基本上有

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

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

我该怎么办?

最佳答案

当您第一次调用静态函数时,this 将绑定(bind)到模式的模型。你可以这样做:

someSchema.static('foo', function() {
const newUser = new this({
username: username,
password: password,
});
newUser.save(cb);
})

不要用等效的粗箭头替换匿名函数(我知道你想这样做!)。 this 没有正确的范围。

关于node.js - Mongoose 在静态函数中创建一个新对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33092752/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com