Puedes actualizar varios documentos en una colección llamando al update() método en un generador de consultas.
Pase un filtro de consulta al método where() para recuperar los documentos que cumplen un conjunto de criterios. Luego, actualice los documentos coincidentes pasando los cambios deseados 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
Seleccione de lo siguiente Eloquent y Query Builder pestañas para ver ejemplos de uso para la misma operación que utilizan cada sintaxis de consulta correspondiente:
Este ejemplo realiza las siguientes acciones:
Utiliza el modelo
MovieEloquent para representar la colecciónmoviesen la base de datossample_mflixActualiza documentos de la colección
moviesque coincidan con un filtro de queryImprime el número de documentos actualizados
El ejemplo llama a los siguientes métodos en el modelo Movie:
where(): Coincide con documentos en los que el valor del campo anidadoimdb.ratinges mayor que9.0update(): Actualiza los documentos coincidentes agregando un campoacclaimedy asignando su valor atrue, luego devuelve el número de documentos actualizados
$updates = Movie::where('imdb.rating', '>', 9.0) ->update(['acclaimed' => true]); echo 'Updated documents: ' . $updates;
Updated documents: 20
Este ejemplo realiza las siguientes acciones:
Accede a la colección
moviesllamando al métodotable()desde la fachadaDBActualiza documentos de la colección
moviesque coincidan con un filtro de queryImprime el número de documentos actualizados
El ejemplo llama a los siguientes métodos para crear query:
where(): Coincide con documentos en los que el valor del campo anidadoimdb.ratinges mayor que9.0update(): Actualiza los documentos coincidentes agregando un campoacclaimedy asignando su valor atrue, luego devuelve el número de documentos actualizados
$updates = DB::table('movies') ->where('imdb.rating', '>', 9.0) ->update(['acclaimed' => true]); echo 'Updated documents: ' . $updates;
Updated documents: 20
Para aprender a editar tu aplicación Laravel para ejecutar el ejemplo de uso, consulta la página de Ejemplos de Uso.