MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

Qual è la differenza tra id e _id in mangusta?

Dalla documentazione:

Mongoose assegna a ciascuno dei tuoi schemi un getter virtuale id per impostazione predefinita che restituisce il cast del campo _id dei documenti a una stringa o, nel caso di ObjectIds, la sua stringa esadecimale.

Quindi, in pratica, l'id getter restituisce una rappresentazione di stringa del _id del documento (che viene aggiunto a tutti i documenti MongoDB per impostazione predefinita e ha un tipo predefinito di ObjectId ).

Per quanto riguarda ciò che è meglio per fare riferimento, dipende interamente dal contesto (ad esempio, vuoi un ObjectId o una string ). Ad esempio, se si confronta id 's, la stringa è probabilmente migliore, come ObjectId 's non supererà un test di uguaglianza a meno che non siano la stessa istanza (indipendentemente dal valore che rappresentano).