30 lines
1.1 KiB
Python
30 lines
1.1 KiB
Python
from django.shortcuts import get_object_or_404
|
|
|
|
from rest_framework import generics
|
|
from rest_framework.response import Response
|
|
|
|
from core.apps.shared.models import UsdCourse
|
|
from core.apps.shared.serializers.usd_course import UsdCourseSerializer
|
|
from core.apps.accounts.permissions.permissions import HasRolePermission
|
|
|
|
|
|
class UsdCourseApiView(generics.GenericAPIView):
|
|
serializer_class = UsdCourseSerializer
|
|
queryset = UsdCourse.objects.all()
|
|
permission_classes = [HasRolePermission]
|
|
|
|
def get(self, request):
|
|
value = UsdCourse.objects.first()
|
|
serializer = self.serializer_class(value)
|
|
return Response(serializer.data, status=200)
|
|
|
|
def patch(self, request):
|
|
usd_cource = UsdCourse.objects.first()
|
|
serializer = self.serializer_class(data=request.data)
|
|
if not serializer.is_valid():
|
|
return Response(serializer.errors, status=400)
|
|
value = serializer.validated_data.get('value')
|
|
usd_cource.value = value
|
|
usd_cource.save()
|
|
return Response({'new_value': usd_cource.value, 'old_value': value}, status=200)
|