在Django rest框架中获取图像文件和字段

Posted

技术标签:

【中文标题】在Django rest框架中获取图像文件和字段【英文标题】:Get image file and fields in Django rest framework 【发布时间】:2021-09-02 11:33:16 【问题描述】:

我正在尝试通过 django restframe work 上传图片并返回自定义响应 views.py

class Imageuploadviewset(viewsets.ModelViewSet):
   queryset = UploadModel.objects.all()
   serializer_class = UploadSerializer
   def retrieve(self, request, *args, **kwargs):
    instance = self.get_object()
    serializer = self.get_serializer(instance)

    return Response('something': 'serializer')
   def list(self, request, *args, **kwargs):
    return Response('Model': 'Skin Disease Diagnosis')

models.py

class UploadModel(models.Model):
    name=models.CharField(max_length=50)
    image=models.ImageField('images/')

urls.py

router = DefaultRouter()
router.register(r'UploadModel', views.Imageuploadviewset)

urlpatterns = [
    path('',views.home,name='home'),
    path('api/', include(router.urls)),
]

Serializer.py

class UploadSerializer(serializers.HyperlinkedModelSerializer):
    class Meta:
        model=UploadModel
        fields='__all__'

询问如何使用nameimage 上传,在它们上运行一些函数并返回响应。我不知道如何获得这些。

【问题讨论】:

这有帮助吗? ***.com/questions/41094013/… 你试过枕头吗? 上传没有问题,问题是我无法在后端代码处理图像 【参考方案1】:

我需要create 函数而不是retrievelist

def create(self, request):
      img=request.FILES['image']
      user=request.POST['name']
      pred=somefunction(ai,img)
      return Response('user':user,'prediction':pred)

【讨论】:

以上是关于在Django rest框架中获取图像文件和字段的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 django rest 框架在模板中获取模型选择字段名称而不是 id

Django rest 框架 - 将图像上传到 Azure 存储

Django Rest Framework - 在序列化程序中获取相关模型字段

django rest框架保存base64文件

如何获取主键相关字段嵌套序列化器django rest框架的所有值

如何在 django rest 框架中定义列表字段?