StudE-Backend/stude/student_status/views.py

30 lines
947 B
Python
Raw Normal View History

2023-08-07 15:16:57 +08:00
from django.shortcuts import get_object_or_404
2023-06-27 13:40:31 +08:00
from rest_framework import generics, viewsets
from rest_framework.permissions import IsAuthenticated
from .models import StudentStatus
from .serializers import StudentStatusSerializer
2023-06-27 13:40:31 +08:00
class StudentStatusAPIView(generics.RetrieveUpdateAPIView):
serializer_class = StudentStatusSerializer
permission_classes = [IsAuthenticated]
def get_queryset(self):
user = self.request.user
queryset = StudentStatus.objects.filter(user=user)
return queryset
2023-08-07 15:16:57 +08:00
def get_object(self):
queryset = self.get_queryset()
obj = get_object_or_404(queryset)
return obj
class ActiveStudentStatusListAPIView(generics.ListAPIView):
serializer_class = StudentStatusSerializer
2023-07-09 19:18:21 +08:00
permission_classes = [IsAuthenticated]
def get_queryset(self):
user = self.request.user
return StudentStatus.objects.filter(user != user).filter(active=True)