V příručce options
argument potřebuje "fields"
zadejte jej, protože existují další podrobnosti, jako je "upsert"
a "new"
kde toto platí. Ve vašem případě také chtít "new"
možnost:
User.findOneAndUpdate(
{ "_id": "132324" },
{ "$set": { "hair_color": "yellow" } },
{
"fields": { "first_name":1, "last_name": 1 },
"new": true
}
).exec(...)
Alternativně můžete použít .select()
User.select({ "first_name": 1, "last_name": 1 }).findOneAndUpdate(
{ "_id": "132324" },
{ "$set": { "hair_color": "yellow" } },
{ "new": true }
).exec(...)
Upozorňujeme, že bez "new": true
vrácený dokument je ve stavu před byla zpracována úprava aktualizace. Někdy máte na mysli toto, ale většinou opravdu chcete upravený dokument.