Я создаю вид Mongo для того, чтобы передать клиенту внешнего вида необходимые формы данных. Первоначально у меня есть документ, который выглядит так:
{
"_id" : <value>,
"region" : "Midwest",
"dob" : ISODate("1989-07-21T05:00:00.000+0000"),
"paymentOption" : {
"_id" : <value>,
"anotherProp" : <value>
"coverage" : {
"status" : "active",
"coverageEnd" : ISODate("2020-07-31T00:00:00.000+0000"),
"coverageStart" : ISODate("2018-08-01T00:00:00.000+0000"),
},
}
}
... и я хочу взять «покрытие» из «paymentOption» и поместить его в корень документа со свойством под названием «покрытие», а затем удалить «paymentOption».
Для этого я попробовал это:
$addFields: {
"coverage" : { "paymentOption.coverage" : {$exists: true} }
}
... но это выдает ошибку:
Неверная спецификация $ addFields: нельзя использовать точечное имя поля
Как нужно изменить эту операцию для создания этого документа?
{
"_id" : <value>,
"region" : "Midwest",
"dob" : ISODate("1989-07-21T05:00:00.000+0000"),
"coverage" : {
"status" : "active",
"coverageEnd" : ISODate("2020-07-31T00:00:00.000+0000"),
"coverageStart" : ISODate("2018-08-01T00:00:00.000+0000"),
}
}