from django.shortcuts import render
from .models import Product
from .serializers import ProductSerializers
from rest_framework.response import Response
from rest_framework.views import APIView
from rest_framework.permissions import IsAuthenticated, IsAuthenticatedOrReadOnly, DjangoModelPermissions
from common.permissions import UserPermission
from rest_framework import status
class ProductDeleteUpdateApiView(APIView):
def put(self, request, pk):
instance = Product.objects.get(pk = pk)
print(request.data)
serializer = ProductSerializers(instance, data = request.data, partial = True, context = {'request': request})
if serializer.is_valid():
serializer.save()
print("Valid",serializer.error_messages)
return Response(serializer.data, status= status.HTTP_200_OK)
else:
print(serializer.errors)
return Response(serializer.error_messages)
def patch(self, request, pk):
instance = Product.objects.get(pk = pk)
serializer = ProductSerializers(instance, data = request.data, partial = True, context = {'request': request})
if serializer.is_valid():
serializer.save()
print("Valid",serializer.validated_data)
return Response(serializer.data, status= status.HTTP_200_OK)
else:
print(serializer.errors)
return Response(serializer.validated_data)
def delete(self, request, pk):
instance = Product.objects.get(pk = pk)
if instance:
instance.delete()
return Response({"message": "Item delist "}, status = status.HTTP_200_OK)