Exemple #1
0
    def put(self, request, pk):
        book = self.get_object(pk)
        serializer = BookSerializer(book, data=request.data)
        if serializer.is_valid():
            serializer.save()
            return Response(serializer.data)

        return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
Exemple #2
0
def book_get_id_api_view(request, pk):

    try:
        book = Book.objects.get(pk=pk)
    except Book.DoesNotExist:
        return Response(
            {"error": {
                'code': 404,
                "message": "Object doesnt exists"
            }},
            status=status.HTTP_400_BAD_REQUEST)

    if request.method == 'GET':
        serializer = BookSerializer(book)
        return Response(serializer.data, status=status.HTTP_200_OK)

    elif request.method == 'PUT':
        serializer = BookSerializer(book, data=request.data)
        if serializer.is_valid():
            serializer.save()
            return Response(serializer.data)

        return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)

    elif request.method == 'DELETE':
        serializer = BookSerializer(book)
        book.delete()
        return Response(serializer.data, status=status.HTTP_302_FOUND)
Exemple #3
0
def book_slug_create_api_view(request, *args, **kwargs):

    if request.method == 'GET':
        slug = kwargs.get('slug')
        book = Book.objects.filter(title=slug)
        Serializer = BookSerializer(book, many=True)
        return Response(Serializer.data)
Exemple #4
0
 def get(self, request, pk):
     book = self.get_object(pk)
     serializer = BookSerializer(book, context={'request':
                                                request})  # for hyperlinks
     return Response(
         serializer.data,
         status=status.HTTP_200_OK,
     )
Exemple #5
0
def book_list_create_api_view(request):
    if request.method == 'GET':
        book = Book.objects.filter(active=True)
        Serializer = BookSerializer(book, many=True)
        return Response(Serializer.data)
    elif request.method == 'POST':
        serializer = BookSerializer(data=request.data)
        if serializer.is_valid():
            serializer.save()
            return Response(serializer.data, status=status.HTTP_201_CREATED)
        return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
Exemple #6
0
 def post(self, request):
     serializer = BookSerializer(data=request.data)
     if serializer.is_valid():
         serializer.save()
         return Response(serializer.data, status=status.HTTP_201_CREATED)
     return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
Exemple #7
0
 def get(self, request):
     book = Book.objects.filter(active=True)
     Serializer = BookSerializer(book,
                                 many=True,
                                 context={'request': request})
     return Response(Serializer.data)
Exemple #8
0
 def delete(self, request, pk):
     book = self.get_object(pk)
     serializer = BookSerializer(book)
     book.delete()
     return Response(serializer.data, status=status.HTTP_302_FOUND)