UUID - Node.js SDK
New in version 10.5.0.
Overview
UUID
(Universal Unique Identifier) is a 16-byte unique value. You can use UUID
as an identifier for
objects. UUID
is indexable and you can use it as a
primary key.
Note
Using UUID Instead of ObjectId
In general, you can use UUID
for any fields that function as a unique
identifier. Using UUID
might be particularly useful if you are migrating
data not stored in MongoDB since it is likely that your object's unique
identifiers are already of a UUID
type. Alternatively, using ObjectId
might be useful for a collection of data that already exists in MongoDB.
Usage
To define a property as a UUID
, set its type to the string "uuid"
in
your object model. Create a Realm
object within a write transaction. To set any unique identifier properties of
your object to a random value, call new UUID()
. Alternatively, pass a string
to new UUID()
to set the unique identifier property to a specific value.
const { UUID } = Realm.BSON; const ProfileSchema = { name: "Profile", primaryKey: "_id", properties: { _id: "uuid", name: "string", }, }; const realm = await Realm.open({ path: "realm-files/data-type-realm", schema: [ProfileSchema], }); realm.write(() => { realm.create("Profile", { name: "John Doe.", _id: new UUID(), // create a _id with a randomly generated UUID }); realm.create("Profile", { name: "Tim Doe.", _id: new UUID("882dd631-bc6e-4e0e-a9e8-f07b685fec8c"), // create a _id with a specific UUID value }); });