41 lines
1.3 KiB
Python
41 lines
1.3 KiB
Python
from rest_framework import generics
|
|
from translation import models
|
|
from translation import serializers
|
|
from rest_framework import permissions
|
|
from utils.views import JWTViewMixin
|
|
|
|
|
|
# Mixins
|
|
class LanguageViewMixin(generics.GenericAPIView):
|
|
"""Mixin for Language views"""
|
|
model = models.Language
|
|
queryset = models.Language.objects.all()
|
|
|
|
|
|
# Views
|
|
class LanguageListView(LanguageViewMixin, JWTViewMixin, generics.ListAPIView):
|
|
"""List view for model Language"""
|
|
permission_classes = (permissions.AllowAny, )
|
|
serializer_class = serializers.LanguageSerializer
|
|
|
|
|
|
class LanguageCreateView(LanguageViewMixin, generics.CreateAPIView):
|
|
"""Create view for model Language"""
|
|
permission_classes = (permissions.AllowAny, )
|
|
serializer_class = serializers.LanguageSerializer
|
|
|
|
|
|
class LanguageRetrieveView(LanguageViewMixin, generics.RetrieveAPIView):
|
|
"""Retrieve view for model Language"""
|
|
serializer_class = serializers.LanguageSerializer
|
|
|
|
|
|
class LanguageUpdateView(LanguageViewMixin, generics.UpdateAPIView):
|
|
"""Update view for model Language"""
|
|
serializer_class = serializers.LanguageSerializer
|
|
|
|
|
|
class LanguageDestroyView(LanguageViewMixin, generics.DestroyAPIView):
|
|
"""Destroy view for model Language"""
|
|
serializer_class = serializers.LanguageSerializer
|