This repository has been archived on 2022-09-23. You can view files and clone it, but cannot push or open issues or pull requests.
webdev/website/snippets/views.py

28 lines
897 B
Python
Raw Normal View History

2022-01-08 00:40:31 +01:00
from django.contrib.auth.models import User
2022-01-08 00:12:34 +01:00
from .models import Snippet
2022-01-08 00:40:31 +01:00
from .serializers import SnippetSerializer, UserSerializer
2022-01-08 00:48:12 +01:00
from rest_framework import generics, permissions
2022-01-08 00:28:32 +01:00
2022-01-08 00:29:57 +01:00
class SnippetList(generics.ListCreateAPIView):
queryset = Snippet.objects.all()
serializer_class = SnippetSerializer
2022-01-08 00:48:12 +01:00
permission_classes = [permissions.IsAuthenticatedOrReadOnly]
2022-01-08 00:12:34 +01:00
2022-01-08 00:43:06 +01:00
def perform_create(self, serializer):
serializer.save(owner=self.request.user)
2022-01-08 00:12:34 +01:00
2022-01-08 00:29:57 +01:00
class SnippetDetail(generics.RetrieveUpdateDestroyAPIView):
queryset = Snippet.objects.all()
2022-01-08 00:40:31 +01:00
serializer_class = SnippetSerializer
2022-01-08 00:48:12 +01:00
permission_classes = [permissions.IsAuthenticatedOrReadOnly]
2022-01-08 00:40:31 +01:00
class UserList(generics.ListAPIView):
queryset = User.objects.all()
serializer_class = UserSerializer
class UserDetail(generics.RetrieveAPIView):
queryset = User.objects.all()
serializer_class = UserSerializer