通过mongoose将_id字符串更改为mongodb中的base64编码字符串

时间:2015-05-05 00:59:33

标签: node.js mongodb mongoose base64

默认情况下,mongodb生成一些随机字符串,如5548087025c7f79259525eff,其类型为ObjectId。而不是那个随机字符串我想使用base64编码的字符串,因此它总是从alphabet开始,因为我想在嵌入文档上使用CRUD,如果id根据我的理解从整数开始是不可能的。也存储为字符串而不是ObjectId。如果解决方案使用猫鼬,那就更好了。

我可以使用nodejs将字符串编码为base64,就像我的情况一样。但我不知道在哪里更改此默认行为...非常感谢

1 个答案:

答案 0 :(得分:1)

只需在架构中定义_id属性,然后将type选项设置为String。您可以将default值设置为生成值的函数,也可以在创建文档时手动设置该值。

    _id: { type: String, required: true, index: true, unique: true }