gpt4 book ai didi

node.js - 添加过滤器时,Mongoose find/findOne 始终返回 null

转载 作者:太空宇宙 更新时间:2023-11-03 22:13:03 27 4
gpt4 key购买 nike

过去几天我遇到了一个严重困扰我的问题。我为 nodejs 项目设置了 mongoose 我已经定义了所有架构和模型,如下所示

var studentSchema = new Schema({
fullname: {type: String, required: true},
student_id: {type: String, required: true, unique: true},
votingNo: {type: Number, required: true, unique: true},
voted: {type: Boolean, required: true, default: false}
});
var Student = mongoose.model('Student', studentSchema, 'student');

我已经导出了模型,并在另一个模块中使用它。每当我尝试查询这样的结果时:

 model.Student.find({}, function (err, students) {
console.log(err);
console.log(students);
});

我得到了结果。但是当我添加过滤器时,就像这样:

model.Student.find({student_id: studentId}, function (err, students) {
console.log(err);
console.log(students);
});

结果始终是一个空数组。

我尝试过使用 findOne() 但它总是返回 null。

最佳答案

尝试像这样调用查询

var Student = mongoose.model('Student');
Student.find({}, function (err, students) {
console.log(err);
console.log(students);
});

如果它不起作用,请在调用之前添加此内容以确保数据库已打开。

var mongoose = require('mongoose');
console.log(mongoose.connection.readyState); // Should not return 0

希望对你有帮助!

关于node.js - 添加过滤器时,Mongoose find/findOne 始终返回 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36793602/

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