Change structure
This commit is contained in:
parent
0c40ed06e1
commit
d98a6aeb00
|
|
@ -101,17 +101,30 @@ class DetermineLocation(generics.GenericAPIView):
|
||||||
raise Http404
|
raise Http404
|
||||||
|
|
||||||
|
|
||||||
class ContentPageView(generics.ListAPIView):
|
class ContentPageBaseView(generics.GenericAPIView):
|
||||||
|
|
||||||
|
@property
|
||||||
|
def static_page_category(self):
|
||||||
|
name = 'static'
|
||||||
|
|
||||||
|
static_page_category = NewsType.objects.filter(name=name).first()
|
||||||
|
|
||||||
|
if static_page_category is None:
|
||||||
|
static_page_category = NewsType.objects.create(name=name)
|
||||||
|
|
||||||
|
return static_page_category
|
||||||
|
|
||||||
|
def get_queryset(self):
|
||||||
|
return super().get_queryset().filter(news_type=self.static_page_category)
|
||||||
|
|
||||||
|
|
||||||
|
class ContentPageView(ContentPageBaseView, generics.ListAPIView):
|
||||||
"""Method to get content pages"""
|
"""Method to get content pages"""
|
||||||
|
|
||||||
permission_classes = (permissions.AllowAny,)
|
permission_classes = (permissions.AllowAny,)
|
||||||
serializer_class = NewsListSerializer
|
serializer_class = NewsListSerializer
|
||||||
queryset = News.objects.all()
|
queryset = News.objects.all()
|
||||||
|
|
||||||
def get_queryset(self):
|
|
||||||
static_page_category = NewsType.objects.get(name='static')
|
|
||||||
return super().get_queryset().filter(news_type=static_page_category)
|
|
||||||
|
|
||||||
|
|
||||||
class ContentPageAdminView(generics.ListCreateAPIView):
|
class ContentPageAdminView(generics.ListCreateAPIView):
|
||||||
"""Method to get content pages"""
|
"""Method to get content pages"""
|
||||||
|
|
@ -120,10 +133,6 @@ class ContentPageAdminView(generics.ListCreateAPIView):
|
||||||
serializer_class = NewsListSerializer
|
serializer_class = NewsListSerializer
|
||||||
queryset = News.objects.all()
|
queryset = News.objects.all()
|
||||||
|
|
||||||
def get_queryset(self):
|
|
||||||
static_page_category = NewsType.objects.get(name='static')
|
|
||||||
return super().get_queryset().filter(news_type=static_page_category)
|
|
||||||
|
|
||||||
|
|
||||||
class ContentPageRetrieveView(NewsMixinView, generics.RetrieveAPIView):
|
class ContentPageRetrieveView(NewsMixinView, generics.RetrieveAPIView):
|
||||||
"""Retrieve method to get content pages"""
|
"""Retrieve method to get content pages"""
|
||||||
|
|
@ -134,10 +143,6 @@ class ContentPageRetrieveView(NewsMixinView, generics.RetrieveAPIView):
|
||||||
queryset = News.objects.all()
|
queryset = News.objects.all()
|
||||||
renderer_classes = [StaticHTMLRenderer]
|
renderer_classes = [StaticHTMLRenderer]
|
||||||
|
|
||||||
def get_queryset(self):
|
|
||||||
static_page_category = NewsType.objects.get(name='static')
|
|
||||||
return self.queryset.filter(news_type__id=static_page_category.id)
|
|
||||||
|
|
||||||
def get(self, request, *args, **kwargs):
|
def get(self, request, *args, **kwargs):
|
||||||
instance = self.get_object()
|
instance = self.get_object()
|
||||||
return Response(instance.description.get(request.locale))
|
return Response(instance.description.get(request.locale))
|
||||||
|
|
@ -151,10 +156,6 @@ class ContentPageIdRetrieveView(generics.RetrieveAPIView):
|
||||||
queryset = News.objects.all()
|
queryset = News.objects.all()
|
||||||
renderer_classes = [StaticHTMLRenderer]
|
renderer_classes = [StaticHTMLRenderer]
|
||||||
|
|
||||||
def get_queryset(self):
|
|
||||||
static_page_category = NewsType.objects.get(name='static')
|
|
||||||
return self.queryset.filter(news_type__id=static_page_category.id)
|
|
||||||
|
|
||||||
def get(self, request, *args, **kwargs):
|
def get(self, request, *args, **kwargs):
|
||||||
instance = self.get_object()
|
instance = self.get_object()
|
||||||
return Response(instance.description.get(request.locale))
|
return Response(instance.description.get(request.locale))
|
||||||
|
|
@ -167,7 +168,3 @@ class ContentPageRetrieveAdminView(NewsMixinView, generics.RetrieveUpdateDestroy
|
||||||
permission_classes = (permissions.IsAdminUser,)
|
permission_classes = (permissions.IsAdminUser,)
|
||||||
serializer_class = NewsDetailSerializer
|
serializer_class = NewsDetailSerializer
|
||||||
queryset = News.objects.all()
|
queryset = News.objects.all()
|
||||||
|
|
||||||
def get_queryset(self):
|
|
||||||
static_page_category = NewsType.objects.get(name='static')
|
|
||||||
return super().get_queryset().filter(news_type=static_page_category)
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user