Это мой пример документа:
{
keys: {
attr1: ['a', 'b', 'c'],
attr2: ['d', 'e']
}
}
Я удаляю элементы в массиве вот так ...
{
$pullAll: {
'keys.attr2': ['d', 'e']
}
}
И это оставляет меня с пустым массивом для поля attr2:
{
keys: {
attr1: ['a', 'b', 'c'],
attr2: []
}
}
Но что я хочу сделать, так это если поле теперь пустое, тогда я хочу $unset
это поле, чтобы конечный результат выглядел так:
{
keys: {
attr1: ['a', 'b', 'c']
}
}
Я хочу сделать это в рамках одной операции поиска и обновления.
Спасибо за помощь.