award back api

This commit is contained in:
alex 2019-11-20 16:38:11 +03:00
parent 7ba3913000
commit 824cbe203b
6 changed files with 57 additions and 8 deletions

View File

@ -1,7 +1,7 @@
from django.core.validators import EMPTY_VALUES
from django_filters import rest_framework as filters
from review import models
from main import models
class AwardFilter(filters.FilterSet):
@ -14,11 +14,14 @@ class AwardFilter(filters.FilterSet):
class Meta:
"""Meta class."""
model = models.Review
model = models.Award
fields = (
'establishment_id',
'product_id',
'employee_id',
'state',
'award_type',
'vintage_year',
)
def by_establishment_id(self, queryset, name, value):

View File

@ -38,7 +38,7 @@ class SiteFeatureSerializer(serializers.ModelSerializer):
'route',
'source',
'nested',
)
)
class CurrencySerializer(ProjectModelSerializer):
@ -145,6 +145,22 @@ class AwardSerializer(AwardBaseSerializer):
fields = AwardBaseSerializer.Meta.fields + ['award_type', ]
class BackAwardSerializer(serializers.ModelSerializer):
"""Award serializer."""
title_translated = serializers.CharField(read_only=True, allow_null=True)
class Meta:
model = models.Award
fields = [
'id',
'title_translated',
'vintage_year',
'award_type',
'state',
]
class CarouselListSerializer(serializers.ModelSerializer):
"""Serializer for retrieving list of carousel items."""
@ -202,4 +218,4 @@ class PageTypeBaseSerializer(serializers.ModelSerializer):
fields = [
'id',
'name',
]
]

11
apps/main/urls/back.py Normal file
View File

@ -0,0 +1,11 @@
"""Back main URLs"""
from django.urls import path
from main.views import back as views
app_name = 'main'
urlpatterns = [
path('awards/', views.AwardLstView.as_view(), name='awards-list-create'),
path('awards/<int:pk>/', views.AwardRUDView.as_view(), name='awards-rud'),
]

21
apps/main/views/back.py Normal file
View File

@ -0,0 +1,21 @@
from rest_framework import generics, permissions
from main import serializers
from main.filters import AwardFilter
from main.models import Award
class AwardLstView(generics.ListCreateAPIView):
"""Award list create view."""
queryset = Award.objects.all()
serializer_class = serializers.BackAwardSerializer
permission_classes = (permissions.IsAdminUser,)
filterset_class = AwardFilter
class AwardRUDView(generics.RetrieveUpdateDestroyAPIView):
"""Award RUD view."""
queryset = Award.objects.all()
serializer_class = serializers.BackAwardSerializer
permission_classes = (permissions.IsAdminUser,)
lookup_field = 'id'

View File

@ -1,9 +1,8 @@
from django_filters.rest_framework import DjangoFilterBackend
from rest_framework import generics, permissions
from review import filters
from review import models
from review import serializers
from review import filters
from utils.permissions import IsReviewerManager, IsRestaurantReviewer
@ -12,7 +11,6 @@ class ReviewLstView(generics.ListCreateAPIView):
serializer_class = serializers.ReviewBaseSerializer
queryset = models.Review.objects.all()
permission_classes = [permissions.IsAuthenticatedOrReadOnly, ]
filter_backends = (DjangoFilterBackend,)
filterset_class = filters.ReviewFilter

View File

@ -15,5 +15,5 @@ urlpatterns = [
path('products/', include(('product.urls.back', 'product'), namespace='product')),
path('re_blocks/', include(('advertisement.urls.back', 'advertisement'),
namespace='advertisement')),
path('main/', include('main.urls.back')),
]