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
|
||||
|
||||
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.is_valid(raise_exception=True)
|
||||
|
||||
|
|
|
|||
|
|
@ -160,6 +160,17 @@ class GuideBaseSerializer(serializers.ModelSerializer):
|
|||
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):
|
||||
"""Serializer for model GuideElement."""
|
||||
establishment_detail = EstablishmentGuideElementSerializer(read_only=True,
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
"""Collection common urlpaths."""
|
||||
from rest_framework.routers import SimpleRouter
|
||||
from django.urls import path
|
||||
from rest_framework.routers import SimpleRouter
|
||||
|
||||
from collection.views import back as views
|
||||
|
||||
|
|
@ -12,6 +12,8 @@ router.register(r'collections', views.CollectionBackOfficeViewSet)
|
|||
urlpatterns = [
|
||||
path('guides/', views.GuideListCreateView.as_view(),
|
||||
name='guide-list-create'),
|
||||
path('guides/all/', views.GuideListView.as_view(),
|
||||
name='guide-list'),
|
||||
path('guides/<int:pk>/', views.GuideElementListView.as_view(),
|
||||
name='guide-element-list'),
|
||||
path('guides/<int:pk>/regenerate/', views.GuideUpdateView.as_view(),
|
||||
|
|
|
|||
|
|
@ -33,7 +33,7 @@ class GuideBaseView(generics.GenericAPIView):
|
|||
queryset = models.Guide.objects.with_base_related
|
||||
if hasattr(self.request, 'country_code'):
|
||||
return queryset().by_country_code(self.request.country_code).order_by('-created')
|
||||
return queryset().order_by('-created')
|
||||
return queryset().none()
|
||||
|
||||
|
||||
class GuideFilterBaseView(generics.GenericAPIView):
|
||||
|
|
@ -104,7 +104,6 @@ class GuideListCreateView(GuideBaseView,
|
|||
generics.ListCreateAPIView):
|
||||
"""View for Guides list for BackOffice users and Guide create."""
|
||||
filter_class = filters.GuideFilterSet
|
||||
pagination_class = None
|
||||
|
||||
def create(self, request, *args, **kwargs):
|
||||
"""Overridden create method."""
|
||||
|
|
@ -112,6 +111,21 @@ class GuideListCreateView(GuideBaseView,
|
|||
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):
|
||||
"""ViewSet for Guides list for BackOffice users"""
|
||||
pagination_class = None
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user