diff --git a/apps/hadis/serializers/serializers_admin.py b/apps/hadis/serializers/serializers_admin.py index 51adc54..0a3a066 100644 --- a/apps/hadis/serializers/serializers_admin.py +++ b/apps/hadis/serializers/serializers_admin.py @@ -417,6 +417,7 @@ class AdminTransmitterDetailSerializer(serializers.ModelSerializer): died_in = serializers.JSONField() description = serializers.JSONField() thumbnail = AbsoluteImageField(required=False, allow_null=True) + remove_thumbnail = serializers.BooleanField(write_only=True, required=False, default=False) reliability = serializers.PrimaryKeyRelatedField( queryset=TransmitterReliability.objects.all(), required=False, @@ -448,12 +449,20 @@ class AdminTransmitterDetailSerializer(serializers.ModelSerializer): "died_in", "description", "thumbnail", + "remove_thumbnail", "share_link", "created_at", "updated_at", ] read_only_fields = ["id", "slug", "share_link", "created_at", "updated_at", "reliability_detail"] + def update(self, instance, validated_data): + remove_thumbnail = validated_data.pop("remove_thumbnail", False) + if remove_thumbnail and instance.thumbnail: + instance.thumbnail.delete(save=False) + instance.thumbnail = None + return super().update(instance, validated_data) + class AdminBookSubjectAreaSerializer(serializers.ModelSerializer): class Meta: