Atualizar um documento
Nesta página
Você pode atualizar um documento em uma coleção recuperando um único documento e chamando o método update()
em um modelo Eloquent ou um construtor de query.
Passe um filtro de query para o método where()
, classifique os documentos correspondentes e chame o método first()
para recuperar apenas o primeiro documento. Em seguida, atualize esse documento correspondente passando as alterações destinadas ao documento para o método update()
.
Exemplo
Este exemplo de uso executa as seguintes ações:
Utiliza o modelo
Movie
Eloquent para representar a coleção dosample_mflix
movies
banco de dados doAtualiza um documento da collection
movies
que corresponde ao filtro de queryImprime o número de documentos atualizados
O exemplo chama os seguintes métodos no modelo Movie
:
where()
: corresponde a documentos em que o valor do campotitle
é"Carol"
.orderBy()
: classifica documentos correspondentes por seus valores de_id
crescentes.first()
: recupera somente o primeiro documento correspondente.update()
: atualiza o valor do campo aninhadoimdb.rating
de6.9
para7.3
e o valor do campo aninhadoimdb.votes
de493
para142000
.
$updates = Movie::where('title', 'Carol') ->orderBy('_id') ->first() ->update([ 'imdb' => [ 'rating' => 7.3, 'votes' => 142000, ], ]); echo 'Updated documents: ' . $updates;
Para saber como editar seu aplicação Laravel para executar o exemplo de uso, consulte apágina de destino Exemplos de uso .
Dica
Para saber mais sobre como atualizar dados com o Laravel MongoDB, consulte a seção Modificar documentos do guia Operações de gravação.