diff --git a/apps/gallery/serializers.py b/apps/gallery/serializers.py index dad6e2de..e1a259a1 100644 --- a/apps/gallery/serializers.py +++ b/apps/gallery/serializers.py @@ -90,6 +90,10 @@ class EstablishmentGallerySerializer(serializers.ModelSerializer): instance.created_by = self.context['request'].user instance.establishment_set.add(establishment) instance.save() + if is_main: + EstablishmentGallery.objects.filter( + establishment=establishment + ).update(is_main=False) # reset all before setting True on some instance EstablishmentGallery.objects.filter( image=instance ).update(is_main=is_main) @@ -100,6 +104,11 @@ class EstablishmentGallerySerializer(serializers.ModelSerializer): instance.set_pubic(validated_data.get('is_public', True)) if 'is_main' in validated_data: is_main = validated_data.pop('is_main') + if is_main: + establishment = instance.establishment_gallery.all()[0].establishment + EstablishmentGallery.objects.filter( + establishment=establishment + ).update(is_main=False) # reset all before setting True on some instance EstablishmentGallery.objects.filter( image=instance ).update(is_main=is_main)