accounts/apps/gooyal_oauth2/views/apis.py
2024-07-22 15:12:09 +03:30

19 lines
728 B
Python

from oauth2_provider.contrib.rest_framework import TokenHasScope
from rest_framework import generics
from rest_framework.viewsets import ReadOnlyModelViewSet
from ..models import Application
from ..rest_framework import IsAuthenticatedOrTokenMatchesOASRequirements
from ..serializers import ApplicationSerializer
class ApplicationViewSet(ReadOnlyModelViewSet):
serializer_class = ApplicationSerializer
lookup_field = 'uuid'
permission_classes = [IsAuthenticatedOrTokenMatchesOASRequirements]
required_alternate_scopes = {
"GET": [['accounts.applications:list_or_retrieve']],
}
def get_queryset(self):
user = self.request.user
return Application.objects.filter(user=user).all()