我正在使用带有 Node 的 npm mongodb
驱动程序。
我有
collection.findOne({query}, function(err, result) {
//do something
}
问题是说我没有任何结果,无论我是否找到结果,err
仍然是 null
。我怎么知道查询没有找到结果?
我也试过
info = collection.findOne(....
但是 info
只是 undefined
(它看起来是异步的,所以我不认为这是要走的路..)
最佳答案
未找到任何记录不是错误情况,因此您要查找的是 result
中缺少值。由于任何匹配的文档总是“真实的”,你可以简单地使用一个简单的 if (result)
检查。例如,
collection.findOne({query}, function(err, result) {
if (err) { /* handle err */ }
if (result) {
// we have a result
} else {
// we don't
}
}
https://stackoverflow.com/questions/10551313/
相关文章:
regex - Node.js 和 Mongoose 正则表达式查询多个字段
mongodb - "db.createUser is not a function"和 "pass
mongodb - 如何列出 mongo shell 中的所有用户?
node.js - 如何使用 Mongoose findOne
mongodb - Cassandra、Membase、Hadoop、MongoDB、RDBMS等如
java - java中使用mongodb的createIndex()和ensureIndex()的