Юзаю mongoose. Если я уже нашел нужный документ через findOneAndUpdate,

я могу после этого использовать полученный объект, чтоб изменить документ в базе и не искать его заново?

13 ответов

4 просмотра

Через findOneAndUpdate - нет

Можно исопльзовать update пайплайны https://docs.mongodb.com/manual/tutorial/update-documents-with-aggregation-pipeline/

maxsimych
Можно исопльзовать update пайплайны https://docs.m...

почему же. Можно модифицировать полученный объект и вызвать await model.save()

Artem-Prokop 🇺🇦 Автор вопроса
Mykola 🤷🏼‍♀️ Symotiuk
почему же. Можно модифицировать полученный объект ...

Он сохраняет все модификации в документах модели? Спасибо, вроде, то что надо. Вопрос только что быстрее - найти и обновить заново или .save

Artem-Prokop 🇺🇦 Автор вопроса
Mykola 🤷🏼‍♀️ Symotiuk
под капотом одно и то же

Но сохранять будет всё, а так только одно. Или я чего-то не понимаю?)

Artem-Prokop 🇺🇦 Автор вопроса
Mykola 🤷🏼‍♀️ Symotiuk
что значит «всё»?

Документ в базе не один. Как он поймет что именно было изменено? Как вообще .save понимает, что ему сохранять? У него не внутри себя же список отдаваемых объектов..

Artem Prokop 🇺🇦
Документ в базе не один. Как он поймет что именно ...

const record = await recordModel.findOneAndUpdate(query, modifier); record.newField = 'value'; record.secondField = 'value2'; await record.save() Вот на моменте record.save() в рекорде уже есть _id, по которому и будет сделан апдейт

Похожие вопросы

Обсуждают сегодня

Так а кто может спарсить всех участников чата? Идишники
Magic
18
Всем привет! подскажите пожалуйста как можно увеличить качество фото?
Evgeniy
19
Доброе утро. Подскажите, если если 4 корутины, внутри которых VideoCapture, то будут ли они работать асинхронно? Т.к. нагуглил, что Videocapture в моменте может быть открыт то...
Alexander👨‍💻
19
Я пожалуй ещё раз брошу клич: кто-нибудь хочет в рабство в ОЭЗ Алабугу на позицию инженера CV? Работы много, задачи сложные, ЗП высокая. Я передам контакт напрямую в HR.
Maxim 👀 Osminin #Slowpoke3D
13
А вы в атоме работаете да?
Alexander x*❄️❅❆
11
I have this grayscale image in opencv I want to change gray quadrilaterals to black like others It means i want to change gray color of specific color to black How can i do th...
@. .@
4
всем драсте, занимаемся активно макетами печатной продукции каждый раз при закае нам шлют pdf или ai, любой вектор кароч чтоб внести заказ нужно каждый раз вручную создавать ...
Vlados
4
Всем привет! Если пользователь обращался к боту через инлайн и не открывал его, бот сможет писать этому пользователю в личку? Или все таки нужно мотивировать пользователя на н...
Typewriter🖨
2
да пофиг на капчу зашел в чат и молчишь при этом ты нонейм? пошел вон
Magic
15
Привет, кто может сделать юзербота с апи? Задачи: - создавать группы - создавать каналы - задавать для созданных каналов аватарку или эмоджи, имя группы - добавлять в группы...
Lencore
13
Карта сайта