Я сейчас пишу агрегат и у меня есть массив с именем tags
сложных объектов, таких как: {name: 'tag1'}
.
Я хочу убедиться, что массив содержит только уникальные tags
.
{
$addFields: {
uniqueTags: {
$reduce: {
input: "$tags",
initialValue: {},
in: {$mergeObjects: {"$$this.name": "$$this"}}
}}
}},
Приведенный выше код завершается ошибкой, потому что я использую $$this.name
в качестве ключа объекта.Если бы я изменил его на что-то другое, например 5
, агрегация работает идеально.