added default image for news types

This commit is contained in:
a.gorbunov 2020-01-22 10:55:26 +00:00
parent f026cfceba
commit b9e6df5482
2 changed files with 10 additions and 3 deletions

View File

@ -16,7 +16,7 @@ from main.models import Carousel
from rating.models import Rating, ViewCount from rating.models import Rating, ViewCount
from utils.models import (BaseAttributes, TJSONField, TranslatedFieldsMixin, HasTagsMixin, from utils.models import (BaseAttributes, TJSONField, TranslatedFieldsMixin, HasTagsMixin,
ProjectBaseMixin, GalleryMixin, IntermediateGalleryModelMixin, ProjectBaseMixin, GalleryMixin, IntermediateGalleryModelMixin,
FavoritesMixin) FavoritesMixin, TypeDefaultImageMixin)
from utils.querysets import TranslationQuerysetMixin from utils.querysets import TranslationQuerysetMixin
from datetime import datetime from datetime import datetime
@ -49,13 +49,18 @@ class NewsBanner(ProjectBaseMixin, TranslatedFieldsMixin):
blank=True, null=True, default=None) blank=True, null=True, default=None)
class NewsType(models.Model): class NewsType(ProjectBaseMixin, TypeDefaultImageMixin):
"""NewsType model.""" """NewsType model."""
name = models.CharField(_('name'), max_length=250) name = models.CharField(_('name'), max_length=250)
tag_categories = models.ManyToManyField('tag.TagCategory', tag_categories = models.ManyToManyField('tag.TagCategory',
related_name='news_types') related_name='news_types')
default_image = models.ForeignKey('gallery.Image', on_delete=models.SET_NULL,
related_name='news_types',
blank=True, null=True, default=None,
verbose_name='default image')
class Meta: class Meta:
"""Meta class.""" """Meta class."""

View File

@ -62,12 +62,14 @@ class NewsBannerSerializer(ProjectModelSerializer):
class NewsTypeSerializer(serializers.ModelSerializer): class NewsTypeSerializer(serializers.ModelSerializer):
"""News type serializer.""" """News type serializer."""
default_image_url = serializers.ImageField(source='default_image.image',
allow_null=True)
class Meta: class Meta:
"""Meta class.""" """Meta class."""
model = models.NewsType model = models.NewsType
fields = ('id', 'name') fields = ('id', 'name', 'default_image_url')
class NewsBaseSerializer(ProjectModelSerializer): class NewsBaseSerializer(ProjectModelSerializer):