Ниже фрагмент кода работает нормально.
function simple() {
return 10000;
}
db.Invoice.create({
items: selectedItems,
_id: simple("userid")
});
Но если я изменю simple function
на это
async function getNextSequence(sequenceName) {
const sequenceDocument = await db.Counter.findOneAndUpdate(
{ _id: sequenceName },
{ $inc: { seq: 1 } },
{ new: true }
);
console.log("seq", sequenceDocument);
return sequenceDocument.seq;
}
db.Invoice.create({
items: selectedItems,
_id: getNextSequence("userid")
});
Это выдаст мне ошибку.
ValidationError: Ошибка проверки счета: _id: Ошибка приведения к номеру для значения "Promise {}" по пути "_id"
Почему это могло произойти?