Puede actualizar un documento en una colección recuperando un solo documento y llamando al update() método en un modelo Eloquent.
Pasa un filtro de query al método where(), ordena los documentos coincidentes y llama al método first() para recuperar sólo el primer documento. Luego, actualiza este documento coincidente enviando tus cambios previstos al método update().
Tip
Para obtener más información sobre cómo actualizar datos con la integración de Laravel, consulte la Modificar Documentos sección de la guía de Operaciones de escritura.
Ejemplo
Este ejemplo realiza las siguientes acciones:
Utiliza el modelo
MovieEloquent para representar la colecciónmoviesen la base de datossample_mflixActualiza un documento de la colección
moviesque coincide con el filtro de queryImprime el número de documentos actualizados
El ejemplo llama a los siguientes métodos en el modelo Movie:
where():: Coincide con los documentos en los que el valor del campotitlees"Carol"orderBy(): Ordena los documentos coincidentes por sus valores de_idascendentesfirst(): Recupera solo el primer documento coincidenteupdate(): Actualiza el valor del campo anidadoimdb.ratingde6.9a7.3y el valor del campo anidadoimdb.votesde493a142000
$updates = Movie::where('title', 'Carol') ->orderBy('id') ->first() ->update([ 'imdb' => [ 'rating' => 7.3, 'votes' => 142000, ], ]); echo 'Updated documents: ' . $updates;
Updated documents: 1
Para aprender a editar tu aplicación Laravel para ejecutar el ejemplo de uso, consulta la página de Ejemplos de Uso.