通过猫鼬将 mongodb 中的 _id 字符串更改为 base64 编码字符串
change _id string to base64 encoded string in mongodb via mongoose
默认情况下 mongodb 生成一些随机字符串,如 5548087025c7f79259525eff
其类型为 ObjectId。而不是那个随机字符串,我想使用 base64 编码的字符串,这样它总是从 alphabet
开始,因为我想在嵌入式文档上进行 CRUD,根据我的理解,如果 id 从整数开始,这是不可能的。也存储为字符串而不是 ObjectId。如果解决方案使用猫鼬会更好。
我可以像我的情况一样使用 nodejs 将字符串编码为 base64。但我不知道在哪里更改此默认行为...非常感谢
只需在您的架构中定义 _id
属性 并将 type
选项设置为 String
。您可以将 default
值设置为生成值的函数,也可以在创建文档时手动设置它。
_id: { type: String, required: true, index: true, unique: true }
默认情况下 mongodb 生成一些随机字符串,如 5548087025c7f79259525eff
其类型为 ObjectId。而不是那个随机字符串,我想使用 base64 编码的字符串,这样它总是从 alphabet
开始,因为我想在嵌入式文档上进行 CRUD,根据我的理解,如果 id 从整数开始,这是不可能的。也存储为字符串而不是 ObjectId。如果解决方案使用猫鼬会更好。
我可以像我的情况一样使用 nodejs 将字符串编码为 base64。但我不知道在哪里更改此默认行为...非常感谢
只需在您的架构中定义 _id
属性 并将 type
选项设置为 String
。您可以将 default
值设置为生成值的函数,也可以在创建文档时手动设置它。
_id: { type: String, required: true, index: true, unique: true }