Meteor bruger samme metode til objekt-id'er, hvis du vælger at bruge det:
Meteor.Collection.ObjectID()
er det samme som MongoDB's ObjectID
Det er lige under Meteor.Collection
navn. Den bruger EJSON til at holde objekt-id'er i almindelig JSON til klientenden. For i bund og grund er der 2 databaser med meteor
Minimongo
Dette er en slags cache af mongodb i klientenden. Dataene downloades fra hovedmongodb på serveren til denne, når browseren indlæses. Når ændringer er foretaget, skubbes de op til serveren.
Server MongoDB
Dette er den originale mongodb fra 10gen på serveren
Så på grund af disse to databaser er Meteor nødt til at indpakke mongodb-funktionalitet i Meteor.Collection
og lad dig bruge den samme kode på både klienten og serveren.
Som standard vil meteor ikke bruge objekt-id'er, den vil bruge en slags tilfældig alfanumerisk tekst. Dette gøres, så du nemt kan bruge ID'er i dine URL'er og ID'er i dine HTML-attributter.
Hvis du bruger new Meteor.Collection.ObjectID()
du får et ObjectID
objekt, der vil bruge mongodbs specifikation af ObjectID på serverenden. Tidsstemplets værdi i objekt-id'et holdes ikke oppe, men dette burde ikke gøre nogen skade.