diff --git a/djangoldp/serializers.py b/djangoldp/serializers.py index 9fd35360c712442402bfea98fbd88175e8ea0e31..5e886e15ef59fdbd3b33ad3727fa75e06c074e23 100644 --- a/djangoldp/serializers.py +++ b/djangoldp/serializers.py @@ -661,12 +661,12 @@ class LDPSerializer(HyperlinkedModelSerializer): item_pk_to_keep = list( map(lambda e: getattr(e, slug_field), filter(lambda x: hasattr(x, slug_field), data))) - for item in list(manager.all()): - if not str(getattr(item, slug_field)) in item_pk_to_keep: - if getattr(manager, 'through', None) is None: + if getattr(manager, 'through', None) is None: + for item in list(manager.all()): + if not str(getattr(item, slug_field)) in item_pk_to_keep: item.delete() - else: - manager.remove(item) + else: + manager.clear() for item in data: if not isinstance(item, dict):