我正在用ExpressJS,PassportJS,MongoDB和MongooseJS编写NodeJS服务器.我设法让PassportJS使用通过Mongoose获得的用户数据进行身份验证.
但要使其工作,我必须使用如下所示的"findById"函数.
var UserModel = db.model('User',UserSchema);
UserModel.findById(id, function (err, user) { < SOME CODE > } );
Run Code Online (Sandbox Code Playgroud)
UserModel是一个猫鼬模型.我之前声明了架构UserSchema.所以我想UserModel.findById()是一种Mongoose模型的方法?
题
它findById做了什么,有什么文件吗?我用Google搜索了一下但没有发现任何东西.
Joh*_*yHK 127
findById是一个方便的方法,由Mongoose提供的模型,以通过其_id查找文档.它的文档可以在这里找到.
例:
// Search by ObjectId
var id = "56e6dd2eb4494ed008d595bd";
UserModel.findById(id, function (err, user) { ... } );
Run Code Online (Sandbox Code Playgroud)
在功能上,它与调用相同:
UserModel.findOne({_id: id}, function (err, user) { ... });
Run Code Online (Sandbox Code Playgroud)
请注意,Mongoose会将提供的id值_id强制转换为模式中定义的类型(默认为ObjectId).
与find()相反,find()可返回1个或多个文档,findById()只能返回0或1个文档.文件可以被认为是记录.
| 归档时间: |
|
| 查看次数: |
102037 次 |
| 最近记录: |