小编dja*_*lar的帖子

Django 更新视图集

目前我正在开发一个图片库 django 项目。用户可以上传图像,然后将“结果”上传到每个图像。我知道我必须覆盖 update(...) 函数,但我想我需要 Base64ImageFiled 的帮助。

一步步:

  1. 用户上传图片(结果 = null)
  2. 图像存储在云中
  3. 用户将结果上传到指定的图像(在此处需要帮助)

这是我目前的结构:

class Image(models.Model):
  project = models.ForeignKey(Project)
  image = models.ImageField(upload_to='images')
  result = models.ImageField(upload_to='results')

class ImageSerializer(serializers.ModelSerializer):
  project = ProjectSerializer(read_only=True, required=False)
  image = Base64ImageField(max_length=None, use_url=False)
  result = Base64ImageField(max_length=None, use_url=False, required=False)

class ProjectImagesViewSet(viewsets.ViewSet):
  queryset = Image.objects.select_related('project').all()
  serializer_class = ImageSerializer

  def list(self, request, project_pk=None):
    queryset = self.queryset.filter( project__name = project_pk)
    serializer = self.serializer_class(queryset, many=True)
    return Response(serializer.data)

  def update(self, request, pk=None, project_pk=None):
    print(request.data['result'])
    ???
Run Code Online (Sandbox Code Playgroud)

django django-models imagefield django-rest-framework

5
推荐指数
1
解决办法
2万
查看次数