Menu Docs
Página inicial do Docs
/ /
Atlas Device SDKs
/ /

CRUD - Atualização - SDK do Node.js

Nesta página

  • Atualizar um objeto
  • Upsert de Objeto
  • Atualizar em massa uma coleção

Você pode adicionar, modificar ou excluir propriedades de um Objeto de Realm dentro de uma transação de escrita da mesma maneira que atualizaria qualquer outro objeto JavaScript.

// Open a transaction.
realm.write(() => {
// Get a dog to update.
const dog = realm.objects("Dog")[0];
// Update some properties on the instance.
// These changes are saved to the realm.
dog.name = "Maximilian";
dog.age += 1;
});

Dica

Atualizar Objetos Relacionados e Integrados

Para atualizar uma propriedade de um objeto integrado ou de um objeto relacionado, modifique a propriedade com notação de ponto ou notação entre colchetes como se estivesse em um objeto normal aninhado.

Para fazer o upsert de um objeto, chame Realm.create() com o modo de atualização definido como modified. A operação insere um novo objeto com a chave primária fornecida ou atualiza um objeto existente que já tem essa chave primária.

realm.write(() => {
// Add a new person to the realm. Since nobody with ID 1234
// has been added yet, this adds the instance to the realm.
person = realm.create(
"Person",
{ _id: 1234, name: "Joe", age: 40 },
"modified"
);
// If an object exists, setting the third parameter (`updateMode`) to
// "modified" only updates properties that have changed, resulting in
// faster operations.
person = realm.create(
"Person",
{ _id: 1234, name: "Joseph", age: 40 },
"modified"
);
});

Para aplicar uma atualização a uma coleção de objetos, itere pela coleção (por exemplo, com para... de). No loop, atualize cada objeto individualmente:

realm.write(() => {
// Create someone to take care of some dogs.
const person = realm.create("Person", { name: "Ali" });
// Find dogs younger than 2.
const puppies = realm.objects("Dog").filtered("age < 2");
// Loop through to update.
for (const puppy of puppies) {
// Give all puppies to Ali.
puppy.owner = person;
}
});

Observação

Relações inversas

Graças a um relacionamento inverso de Dog.owner para Person.dogs, o Realm atualiza automaticamente a lista de cães de Ali sempre que a definimos como dona de um cachorro.

Voltar

Leia

Próximo

Excluir