Здесь у меня есть решение, позволяющее избежать множественных запросов на удаление циклов и старых документов.
Вы можете легко создать новую идею вручную, используя что-то вроде: _id:ObjectId()
Но зная, что Mongo автоматически назначит _id, еслиотсутствует, вы можете использовать агрегат для создания $project
, содержащего все поля вашего документа, но пропустите поле _id.Затем вы можете сохранить его с помощью $out
Так что если ваш документ:
{
"_id":ObjectId("5b5ed345cfbce6787588e480"),
"title": "foo",
"description": "bar"
}
, тогда ваш запрос будет:
db.getCollection('myCollection').aggregate([
{$match:
{_id: ObjectId("5b5ed345cfbce6787588e480")}
}
{$project:
{
title: '$title',
description: '$description'
}
},
{$out: 'myCollection'}
])