web-dev-qa-db-fra.com

Quelle est la différence entre id et _id chez la mangouste?

Quelle est la différence entre _id et id en mangouste? Quel est le meilleur pour le référencement?

43
Ari Porad

De la documentation :

Mongoose attribue à chacun de vos schémas un getter virtuel id par défaut qui renvoie le champ documents _id cast en chaîne, ou dans le cas d'ObjectIds, son hexString.

Donc, fondamentalement, le getter id retourne une représentation sous forme de chaîne du _id Du document (qui est ajouté à tous les documents MongoDB par défaut et a un type par défaut de ObjectId).

En ce qui concerne le meilleur pour le référencement, cela dépend entièrement du contexte (c'est-à-dire, voulez-vous un ObjectId ou un string). Par exemple, si l'on compare les id, la chaîne est probablement meilleure, car les ObjectId ne passeront pas un test d'égalité à moins qu'ils ne soient la même instance (quelle que soit la valeur qu'ils représentent).

71
jmar777