61.Django(장고) - ecommerce 프로젝트 - DRF - APIView를 이용한 예제(CRUD)

JungSik Heo·2024년 12월 19일

1. api\views.py

#dev_51
class APICategory(APIView):
    def get(self, request, pk):
        category = get_object_or_404(Category, id=pk)
        serializer = CategorySerializer(category)
        return Response(serializer.data)
    
    def put(self, request, pk):
        category = get_object_or_404(Category, id=pk)
        serializer = CategorySerializer(category, data=request.data)
        serializer.is_valid(raise_exception=True)
        serializer.save()
        return Response(serializer.data)
    
    def delete(self, request, pk):
        category = get_object_or_404(Category,id=pk)
        category.delete()
        return Response(status=status.HTTP_204_NO_CONTENT)

2. api\views.py

id가 나오도록 수정
return f"{self.id} {self.name}" #dev_51

class Category(models.Model):
    name = models.CharField(max_length=50)

    def __str__(self):        
        return  f"{self.id} {self.name}" #dev_51

3. api\urls.py

    path("categories/", APICategories.as_view()), #dev_51
    path("categories/<int:pk>/", APICategory.as_view())#dev_51

http://127.0.0.1:8000/api/categories/ 접속후

  • CRUD를 테스트

profile
쿵스보이(얼짱뮤지션)

0개의 댓글