Is it possible to do a find then save using async/await promise?
I have the following code:
try {
var accounts = await Account.find()
.where("username").in(["email@gmail.com"])
.exec();
accounts.password = 'asdf';
accounts.save();
} catch (error) {
handleError(res, error.message);
}
and I am getting the following error:
ERROR: accounts.save is not a function
This is what I was looking for:
try {
var accounts = await Account.findOneAndUpdate(
{"username" : "helllo@hello.com"},
{$set: {"password" : "aaaa"}},
{new : true}
);
res.status(200).json(accounts);
} catch (error) {
handleError(res, error.message);
}
or (thanks @JohnnyHK for the find vs findOne tip!):
try {
var accounts = await Account.findOne()
.where("username").in(["hello@hello.com"])
.exec();
accounts.password = 'asdf';
accounts.save();
res.status(200).json(accounts);
} catch (error) {
handleError(res, error.message);
}