Bueno, hay la documentación respectiva para ver para ambos .update()
y .findAndModify()
que es el método raíz de .findOneAndUpdate()
aquí.
Pero en las principales diferencias hay:
-
actualizar() :está destinado a realizar una operación de actualización atómica contra "uno o más" documentos que coincidan con su condición de consulta en una colección. Devuelve el número de documentos modificados en su respuesta.
-
buscarUnoYActualizar() :Tiene como finalidad tanto procesar una declaración de actualización sobre un documento "singular", como recuperar el contenido de dicho documento "singular". El estado devuelto depende del valor de la opción "nueva" que se pasa a la operación. Donde
true
se devuelve el documento "modificado". Dondefalse
el documento "original" se devuelve antes de cualquier modificación. La última forma es la opción predeterminada.
En breve. Uno está destinado a modificar en "masa" y no preocuparse por el contenido del documento como resultado. Y el otro está destinado a modificar un documento singular y devolver el contenido del documento como resultado.
Esa es la diferencia.