首页 > 解决方案 > 如何在 django rest 框架中使用 image_id 和 image_id 作为参数来删除图像

问题描述

如何使用 image_id 删除图像

在 django rest 框架中使用 image_id 作为参数传递

标签: pythondjangodjango-rest-framework

解决方案


模型.py

class UploadImage(models.Model):

img_id = models.AutoField(primary_key=True)
user_id = models.ForeignKey(User, related_name = 'user_id', on_delete=models.CASCADE)
image = models.ImageField(upload_to='images/')

def __str__(self):
    return self.image

视图.py

class DeleteImageAPIView(APIView):

permission_classes = (IsAuthenticated,)

def post(self, request , format=None):
    img_id = request.POST.get('img_id')

    try:
        img = get_object_or_404(UploadImage, img_id=img_id)
        print(img_id)
        img.delete()
        return Response({
            'status' : True,
            'message' : 'Image Deleted Successfully',
        },status=status.HTTP_200_OK)
        
    except:
        return Response({
            'status' : 'False',
            'message' : 'Error! Image with this id does not exist!'
        }, status = status.HTTP_400_BAD_REQUEST) 

网址.py

    url(r'^delete_img',DeleteImageAPIView.as_view(), name='delete_event'),

邮寄方式:

以img_id为按键,感受img_id并发送数据

回复 :

status : 200 OK 如果 img_id 存在

{
"status": true,
"message": "Image Deleted Successfully"
}

或状态:如果 img_id 不存在,则为 400 Bad Request!

{
"status": "False",
"message": "Error! Image with this id does not exist!"
}

最后你很高兴;)


推荐阅读