diff --git a/api/views/__init__.py b/api/views/__init__.py index 90f3fc0e..3d731738 100644 --- a/api/views/__init__.py +++ b/api/views/__init__.py @@ -25,7 +25,7 @@ from rest_framework.response import Response from rest_framework import viewsets from django.core.exceptions import PermissionDenied -from rest_framework.decorators import detail_route +from rest_framework.decorators import action from django.db.models.query import QuerySet from core.views import can_view, can_edit @@ -46,7 +46,7 @@ def check_if(obj, user, test): class ManageModelMixin: - @detail_route() + @action(detail=True) def id(self, request, pk=None): """ Get by id (api/v1/router/{pk}/id/) diff --git a/api/views/counter.py b/api/views/counter.py index 43ac1885..5b241031 100644 --- a/api/views/counter.py +++ b/api/views/counter.py @@ -24,7 +24,7 @@ from rest_framework import serializers from rest_framework.response import Response -from rest_framework.decorators import list_route +from rest_framework.decorators import action from counter.models import Counter @@ -51,7 +51,7 @@ class CounterViewSet(RightModelViewSet): serializer_class = CounterSerializer queryset = Counter.objects.all() - @list_route() + @action(detail=False) def bar(self, request): """ Return all bars (api/v1/counter/bar/) diff --git a/api/views/launderette.py b/api/views/launderette.py index 940f8ebd..cdcacd0a 100644 --- a/api/views/launderette.py +++ b/api/views/launderette.py @@ -24,7 +24,7 @@ from rest_framework import serializers from rest_framework.response import Response -from rest_framework.decorators import list_route +from rest_framework.decorators import action from launderette.models import Launderette, Machine, Token @@ -96,7 +96,7 @@ class LaunderetteTokenViewSet(RightModelViewSet): serializer_class = LaunderetteTokenSerializer queryset = Token.objects.all() - @list_route() + @action(detail=False) def washing(self, request): """ Return all washing tokens (api/v1/launderette/token/washing) @@ -105,7 +105,7 @@ class LaunderetteTokenViewSet(RightModelViewSet): serializer = self.get_serializer(self.queryset, many=True) return Response(serializer.data) - @list_route() + @action(detail=False) def drying(self, request): """ Return all drying tokens (api/v1/launderette/token/drying) @@ -114,7 +114,7 @@ class LaunderetteTokenViewSet(RightModelViewSet): serializer = self.get_serializer(self.queryset, many=True) return Response(serializer.data) - @list_route() + @action(detail=False) def avaliable(self, request): """ Return all avaliable tokens (api/v1/launderette/token/avaliable) @@ -125,7 +125,7 @@ class LaunderetteTokenViewSet(RightModelViewSet): serializer = self.get_serializer(self.queryset, many=True) return Response(serializer.data) - @list_route() + @action(detail=False) def unavaliable(self, request): """ Return all unavaliable tokens (api/v1/launderette/token/unavaliable) diff --git a/api/views/user.py b/api/views/user.py index 4724c292..bb45a8a2 100644 --- a/api/views/user.py +++ b/api/views/user.py @@ -26,7 +26,7 @@ import datetime from rest_framework import serializers from rest_framework.response import Response -from rest_framework.decorators import list_route +from rest_framework.decorators import action from core.models import User @@ -57,7 +57,7 @@ class UserViewSet(RightModelViewSet): serializer_class = UserSerializer queryset = User.objects.filter(is_active=True) - @list_route() + @action(detail=False) def birthday(self, request): """ Return all users born today (api/v1/user/birstdays) diff --git a/requirements.txt b/requirements.txt index bf650400..ae74020d 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,7 +5,7 @@ mistune django-jinja pyopenssl pytz -djangorestframework <3.10 +djangorestframework django-phonenumber-field phonenumbers django-ajax-selects