get news type default image query will be optimized

This commit is contained in:
a.gorbunov 2020-01-22 12:34:38 +00:00
parent f194863862
commit 1921efd2c5
2 changed files with 12 additions and 1 deletions

View File

@ -49,6 +49,12 @@ class NewsBanner(ProjectBaseMixin, TranslatedFieldsMixin):
blank=True, null=True, default=None)
class NewsTypeQuerySet(models.QuerySet):
"""QuerySet for model NewsType"""
def with_base_related(self):
return self.select_related('default_image')
class NewsType(ProjectBaseMixin, TypeDefaultImageMixin):
"""NewsType model."""
@ -61,6 +67,8 @@ class NewsType(ProjectBaseMixin, TypeDefaultImageMixin):
blank=True, null=True, default=None,
verbose_name='default image')
objects = NewsTypeQuerySet.as_manager()
class Meta:
"""Meta class."""

View File

@ -87,9 +87,12 @@ class NewsTypeListView(generics.ListAPIView):
pagination_class = None
permission_classes = (permissions.AllowAny,)
queryset = models.NewsType.objects.all()
serializer_class = serializers.NewsTypeSerializer
def get_queryset(self):
"""Override get_queryset method."""
return models.NewsType.objects.with_base_related()
class NewsBackOfficeMixinView:
"""News back office mixin view."""