Как обновить данные с помощью _id в node_js и mongodb - PullRequest
0 голосов
/ 26 апреля 2019

Я пытался использовать операцию crud с использованием узла js и mongodb.all. Операция crud работает нормально. Ожидается метод обновления. Я пытался найти и обновить метод, но он показывает ошибку. Как это исправить.

обновленный метод

db.collection('Ecommerce').updateOne({ _id:new ObjectId(req.params.id)},{ $set: req.body});

Я попытался запустить, показывая эту ошибку типа, как ее решить.
MongoError: Выполнение обновления по пути '_id' изменило бы неизменяемое поле '_id'

1 Ответ

0 голосов
/ 26 апреля 2019

Ваш req.body также содержит _id, которое является неизменным полем монго.вам нужно удалить его в теле вашего запроса

delete req.body._id;
db.collection('Ecommerce')
    .updateOne(
        { _id:new ObjectId(req.params.id) },
        { $set: req.body }
    );
...