Първо две концепции. Вашето приложение е Клиентът , Mongodb е сървърът .
Основната разлика е тази с .save()
вече имате обект във вашия клиентски код или е трябвало да извлечете данните от сървъра, преди да ги запишете обратно, и записвате обратно цялото нещо.
От друга страна .update()
нене изискват данните да бъдат заредени на клиента от сървъра. Цялото взаимодействие се случва от страна на сървъра, без да се извлича към клиента. Така че .update()
може да бъде много ефективно по този начин, когато добавяте съдържание към съществуващи документи.
Освен това има multi
параметър към .update()
което позволява действията да се извършват върху повече от един документ, който отговаря на условието на заявката.
Има някои неща в методите за удобство, които губите, когато използвате .update()
като обаждане, но ползите за определени операции е "компромисът", който трябва да понесете. За повече информация относно това и наличните опции вижте документацията.
Накратко .save()
е интерфейс от страна на клиента, .update()
е от страна на сървъра.