2019-01-09 14:18:32 +01:00
|
|
|
from rest_framework import response
|
2019-01-11 13:33:35 +01:00
|
|
|
from rest_framework import decorators
|
2019-01-09 14:18:32 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
def action_route(serializer_class):
|
2019-01-11 13:33:35 +01:00
|
|
|
@decorators.action(methods=["post"], detail=False)
|
2019-01-09 14:18:32 +01:00
|
|
|
def action(self, request, *args, **kwargs):
|
|
|
|
|
queryset = self.get_queryset()
|
|
|
|
|
serializer = serializer_class(request.data, queryset=queryset)
|
|
|
|
|
serializer.is_valid(raise_exception=True)
|
|
|
|
|
result = serializer.save()
|
|
|
|
|
return response.Response(result, status=200)
|
|
|
|
|
|
|
|
|
|
return action
|