Этот ниже код удалит полный элемент объекта из массива, где номер телефона «+1786543589455»
db.collection.update(
{ _id: id },
{ $pull: { 'contact': { number: '+1786543589455' } } }
);
Используйте isinstance
, чтобы проверить, что это за объект. В настоящее время вы используете len()
для string
Пример:
tpl = ('path1', 'path2', ('orig1', 'patch1'), ('orig2', 'patch2'))
for item in tpl:
print(item)
if isinstance(item, tuple):
num = len(item)
else:
num = 1
print(num)
Выход:
path1
1
path2
1
('orig1', 'patch1')
2
('orig2', 'patch2')
2