#javascript #node.js #mongoose
Вопрос:
Когда я нахожу документ, используя следующую строку:
const user = await User.findById(req.user.id).populate('input')
А затем я console.log user
, я могу видеть документ, который выполняет запрос.
Однако, когда я добавляю .updateOne({ formResponded: '1' });
в предыдущую строку вот так:
const user = await User.findById(req.user.id).populate('input').updateOne({ formResponded: '1'});
и я console.log user
я не получаю никакой записи, но вместо этого получаю объект, который выглядит так:
{ n: 1, nModified: 1, opTime: { ts: Timestamp { _bsontype: 'Timestamp', low_: 2, high_: 1635212112 }, t: 41 }, electionId: 7fffffff0000000000000029, ok: 1, '$clusterTime': { clusterTime: Timestamp { _bsontype: 'Timestamp', low_: 2, high_: 1635212112 }, signature: { hash: [Binary], keyId: [Long] } }, operationTime: Timestamp { _bsontype: 'Timestamp', low_: 2, high_: 1635212112 } }
Почему это происходит?
Ответ №1:
Исправлено:
const user = await User.findByIdAndUpdate({ _id: req.user.id }, { formResponded: '1' }).populate('input')