为_id
概述
在本指南中,您可以学习如何使用MongoDB Node.js驱动程序,通过使用主键工厂来生成您自己的_id
值。
主键工厂允许您在插入操作中不指定_id
时,在您的文档中创建唯一的标识符。插入操作。默认的主键工厂生成ObjectId
值。
指定主键工厂
要指定主键工厂,将pkFactory
选项应用于您的MongoClient
实例。
以下代码片段将pkFactory
选项应用于生成_id
值的类型为uuid
。
const { UUID } = require('bson'); ... const client = new MongoClient(uri, { pkFactory: { createPk: () => new UUID().toBinary() } });
注意
数据一致性
如果您插入一个具有与主键工厂指定的类型不同的类型的_id
字段的文档,那么您将会有不一致的数据。
例如,如果您在一个生成 uuid
类型的主键工厂上执行以下插入操作,您的 _id
值将包含 uuid
和 字符串
类型。
myColl.insertOne({ _id: "user1388", ... });
更多信息
要了解更多关于本节中讨论的类型、接口和类的信息,请参阅以下资源