如何使用 MongoDB、Node 和 Monk 按字符串 ID 查找?
How to find by string id using MongoDB, Node and Monk?
我的 collection 上有一个 ID 为“info”的文档。我可以使用 {_id: "info"}
过滤器轻松搜索 Mongo Atlas,但是当我尝试在 Node 上使用 Monk 时,它会尝试创建 ObjectID 并抛出错误。在 Node 上执行此搜索的正确方法是什么?
使用 Atlas 控制台搜索:
const db = monk(url);
const rockets = db.get('rockets');
rockets.find({ _id: "info" }).then((docs) => {
console.log(docs);
})
抛出错误:
Error: Argument passed in must be a single String of 12 bytes or a string of 24 hex characters
at Function.createFromHexString
我刚弄明白...
.find({ '_id': { $eq: "info" } })
让 Monk 停止尝试转换为 ObjectID。
我的 collection 上有一个 ID 为“info”的文档。我可以使用 {_id: "info"}
过滤器轻松搜索 Mongo Atlas,但是当我尝试在 Node 上使用 Monk 时,它会尝试创建 ObjectID 并抛出错误。在 Node 上执行此搜索的正确方法是什么?
使用 Atlas 控制台搜索:
const db = monk(url);
const rockets = db.get('rockets');
rockets.find({ _id: "info" }).then((docs) => {
console.log(docs);
})
抛出错误:
Error: Argument passed in must be a single String of 12 bytes or a string of 24 hex characters
at Function.createFromHexString
我刚弄明白...
.find({ '_id': { $eq: "info" } })
让 Monk 停止尝试转换为 ObjectID。