typescript mongodb return _id字段作为id字符串而不是ObjectID

fjaof16o  于 2023-04-22  发布在  TypeScript
关注(0)|答案(1)|浏览(127)

如何创建一个mongo查询,将_id字段返回为id和字符串化。
鉴于此代码

const _id = new ObjectId(id)
const event = await db.collection('events').findOne({ _id })

我怎么能生产出这个产量

event = { id: 644289148310cef91729d97c, name: 'Event Name' }

而不是电流输出

event = { id: ObjectId("644289148310cef91729d97c"), name: 'Event Name' }

我想把它作为mongo查询的一部分来做,而不是在javscript中迭代返回的对象。
我使用的是mongodb库,而不是mongoose。

bihw5rsg

bihw5rsg1#

这可以使用projection$toString

const event = await db()
    .collection('events')
    .findOne(
        { _id },
        { 
            projection: {
                _id: 0,
                id: {$toString: "$_id" },
                name: 1,
            }
        }
    )

相关问题