mongoose中id和_id有什么区别?

时间:2013-03-30 22:36:53

标签: javascript node.js mongodb mongoose database

猫鼬中_idid之间有什么区别?哪个更适合参考?

1 个答案:

答案 0 :(得分:67)

来自documentation

  

Mongoose默认为每个模式分配一个id虚拟getter   它返回文件_id字段强制转换为字符串,或者在这种情况下   ObjectIds,它的hexString。

因此,基本上,id getter返回文档_id的字符串表示形式(默认情况下添加到所有MongoDB文档中,默认类型为ObjectId)。 / p>

关于什么更适合引用,这完全取决于上下文(即,您想要ObjectId还是string)。例如,如果比较id,则字符串可能更好,因为ObjectId将不会通过相等测试,除非它们是同一个实例(无论它们代表什么值)。 / p>