[英]can't fetch specific data from mongodb atlas
I can't fetch specific data from mongodb atlas我无法从 mongodb 地图集获取特定数据
app.post('/profile', (req, res)=>{
let regNo = req.body.regNo;
let mobNo = req.body.mobNo;
let group = regNo.slice(6, 7);
console.log(regNo);
console.log(mobNo);
console.log(group);
if (group = "A") {
candidateGroupA.find({regnumber : regNo, mobnumber : mobNo}, function (err, data) {
console.log(data)
let name = data.name;
console.log(name);
});
}
});
When I used console.log(data), it does work, but console.log(data.name) showing undefined.当我使用 console.log(data) 时,它确实有效,但 console.log(data.name) 显示未定义。
These are my mongoose schema and model这些是我的 mongoose 架构和 model
const candidateSchema = new mongoose.Schema({
regnumber : String,
group : String,
name : String,
gname : String,
gender : String,
dob: String,
institution : String,
location : String,
mobnumber : Number
});
const candidateGroupA = mongoose.model('candidateGroupA', candidateSchema);
The find
method returns an array, so you can access your data's name with data[0].name
: find
方法返回一个数组,因此您可以使用data[0].name
访问数据的名称:
app.post('/profile', (req, res)=>{
let regNo = req.body.regNo;
let mobNo = req.body.mobNo;
let group = regNo.slice(6, 7);
console.log(regNo);
console.log(mobNo);
console.log(group);
if (group === "A") {
candidateGroupA.find({regnumber : regNo, mobnumber : mobNo}, function (err, data) {
if (err) {
console.log(err);
return;
}
console.log(data)
if (data.length > 0) {
let name = data[0].name;
console.log(name);
}
});
}
});
You can use findOne
if you need to retrieve a single object:如果需要检索单个 object,可以使用
findOne
:
candidateGroupA.findOne({regnumber : regNo, mobnumber : mobNo}, function (err, data) {
if (err) {
console.log(err);
return;
}
console.log(data)
let name = data.name;
console.log(name);
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.