added endpoint /api/back/collections/guides/all/,
revert pagination in /api/back/collections/guides/
This commit is contained in:
parent
9bfba9af70
commit
04c6948539
|
|
@ -180,7 +180,20 @@ class LoginByUsernameOrEmailView(JWTGenericViewMixin, generics.GenericAPIView):
|
||||||
serializer_class = serializers.LoginByUsernameOrEmailSerializer
|
serializer_class = serializers.LoginByUsernameOrEmailSerializer
|
||||||
|
|
||||||
def post(self, request, *args, **kwargs):
|
def post(self, request, *args, **kwargs):
|
||||||
"""Implement POST method"""
|
"""
|
||||||
|
#Login view.
|
||||||
|
***
|
||||||
|
##Available HTTP methods: POST
|
||||||
|
POST-request data:
|
||||||
|
```
|
||||||
|
{
|
||||||
|
"username_or_email": <str>,
|
||||||
|
"password": <str>,
|
||||||
|
"remember": <bool>,
|
||||||
|
"source": <int> # 0 - Mobile, 1 - Web, 2 - All (by default used: 1)
|
||||||
|
}
|
||||||
|
```
|
||||||
|
"""
|
||||||
serializer = self.get_serializer(data=request.data)
|
serializer = self.get_serializer(data=request.data)
|
||||||
serializer.is_valid(raise_exception=True)
|
serializer.is_valid(raise_exception=True)
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -160,6 +160,17 @@ class GuideBaseSerializer(serializers.ModelSerializer):
|
||||||
return super(GuideBaseSerializer, self).create(validated_data)
|
return super(GuideBaseSerializer, self).create(validated_data)
|
||||||
|
|
||||||
|
|
||||||
|
class GuideShortSerializer(serializers.ModelSerializer):
|
||||||
|
"""Serializer for model Guide."""
|
||||||
|
|
||||||
|
class Meta(GuideBaseSerializer.Meta):
|
||||||
|
"""Meta-class."""
|
||||||
|
fields = [
|
||||||
|
'id',
|
||||||
|
'name',
|
||||||
|
]
|
||||||
|
|
||||||
|
|
||||||
class GuideElementBaseSerializer(serializers.ModelSerializer):
|
class GuideElementBaseSerializer(serializers.ModelSerializer):
|
||||||
"""Serializer for model GuideElement."""
|
"""Serializer for model GuideElement."""
|
||||||
establishment_detail = EstablishmentGuideElementSerializer(read_only=True,
|
establishment_detail = EstablishmentGuideElementSerializer(read_only=True,
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
"""Collection common urlpaths."""
|
"""Collection common urlpaths."""
|
||||||
from rest_framework.routers import SimpleRouter
|
|
||||||
from django.urls import path
|
from django.urls import path
|
||||||
|
from rest_framework.routers import SimpleRouter
|
||||||
|
|
||||||
from collection.views import back as views
|
from collection.views import back as views
|
||||||
|
|
||||||
|
|
@ -12,6 +12,8 @@ router.register(r'collections', views.CollectionBackOfficeViewSet)
|
||||||
urlpatterns = [
|
urlpatterns = [
|
||||||
path('guides/', views.GuideListCreateView.as_view(),
|
path('guides/', views.GuideListCreateView.as_view(),
|
||||||
name='guide-list-create'),
|
name='guide-list-create'),
|
||||||
|
path('guides/all/', views.GuideListView.as_view(),
|
||||||
|
name='guide-list'),
|
||||||
path('guides/<int:pk>/', views.GuideElementListView.as_view(),
|
path('guides/<int:pk>/', views.GuideElementListView.as_view(),
|
||||||
name='guide-element-list'),
|
name='guide-element-list'),
|
||||||
path('guides/<int:pk>/regenerate/', views.GuideUpdateView.as_view(),
|
path('guides/<int:pk>/regenerate/', views.GuideUpdateView.as_view(),
|
||||||
|
|
|
||||||
|
|
@ -33,7 +33,7 @@ class GuideBaseView(generics.GenericAPIView):
|
||||||
queryset = models.Guide.objects.with_base_related
|
queryset = models.Guide.objects.with_base_related
|
||||||
if hasattr(self.request, 'country_code'):
|
if hasattr(self.request, 'country_code'):
|
||||||
return queryset().by_country_code(self.request.country_code).order_by('-created')
|
return queryset().by_country_code(self.request.country_code).order_by('-created')
|
||||||
return queryset().order_by('-created')
|
return queryset().none()
|
||||||
|
|
||||||
|
|
||||||
class GuideFilterBaseView(generics.GenericAPIView):
|
class GuideFilterBaseView(generics.GenericAPIView):
|
||||||
|
|
@ -104,7 +104,6 @@ class GuideListCreateView(GuideBaseView,
|
||||||
generics.ListCreateAPIView):
|
generics.ListCreateAPIView):
|
||||||
"""View for Guides list for BackOffice users and Guide create."""
|
"""View for Guides list for BackOffice users and Guide create."""
|
||||||
filter_class = filters.GuideFilterSet
|
filter_class = filters.GuideFilterSet
|
||||||
pagination_class = None
|
|
||||||
|
|
||||||
def create(self, request, *args, **kwargs):
|
def create(self, request, *args, **kwargs):
|
||||||
"""Overridden create method."""
|
"""Overridden create method."""
|
||||||
|
|
@ -112,6 +111,21 @@ class GuideListCreateView(GuideBaseView,
|
||||||
return Response(status=status.HTTP_201_CREATED)
|
return Response(status=status.HTTP_201_CREATED)
|
||||||
|
|
||||||
|
|
||||||
|
class GuideListView(generics.ListAPIView):
|
||||||
|
"""View for Guides list."""
|
||||||
|
pagination_class = None
|
||||||
|
serializer_class = serializers.GuideShortSerializer
|
||||||
|
|
||||||
|
def get_queryset(self):
|
||||||
|
"""An overridden get_queryset method."""
|
||||||
|
if hasattr(self.request, 'country_code'):
|
||||||
|
return (
|
||||||
|
models.Guide.objects.by_country_code(self.request.country_code)
|
||||||
|
.order_by('-created')
|
||||||
|
)
|
||||||
|
return models.Guide.objects.none()
|
||||||
|
|
||||||
|
|
||||||
class GuideBackOfficeList(BindObjectMixin, GuideBaseView):
|
class GuideBackOfficeList(BindObjectMixin, GuideBaseView):
|
||||||
"""ViewSet for Guides list for BackOffice users"""
|
"""ViewSet for Guides list for BackOffice users"""
|
||||||
pagination_class = None
|
pagination_class = None
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user