From a8001c44b13de1f8b466cc74ab8b88b6378618e7 Mon Sep 17 00:00:00 2001 From: Anatoly Date: Wed, 23 Oct 2019 17:50:08 +0300 Subject: [PATCH] added validation rule to NewsBackOfficeGallerySerializer --- apps/news/serializers.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/apps/news/serializers.py b/apps/news/serializers.py index 417db72e..6814965a 100644 --- a/apps/news/serializers.py +++ b/apps/news/serializers.py @@ -282,6 +282,7 @@ class NewsBackOfficeGallerySerializer(serializers.ModelSerializer): """Override validate method.""" news_pk = self.get_request_kwargs().get('pk') image_id = self.get_request_kwargs().get('image_id') + is_main = attrs.get('is_main') news_qs = models.News.objects.filter(pk=news_pk) image_qs = Image.objects.filter(id=image_id) @@ -297,6 +298,9 @@ class NewsBackOfficeGallerySerializer(serializers.ModelSerializer): if news.news_gallery.filter(image=image).exists(): raise serializers.ValidationError({'detail': _('Image is already added')}) + if is_main and news.news_gallery.main_images().exists(): + raise serializers.ValidationError({'detail': _('Main image is already added')}) + attrs['news'] = news attrs['image'] = image