前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【Django组件】UNIAPP+DJANGO 多图像上传 + 后端接口接受 uView组件(转载)

【Django组件】UNIAPP+DJANGO 多图像上传 + 后端接口接受 uView组件(转载)

作者头像
小海怪的互联网
发布2022-04-02 15:15:55
3670
发布2022-04-02 15:15:55
举报

VUE文件:

代码语言:javascript
复制
<template>
      <!-- 提交图片 -->
        <view class="cu-card article">
            <view class="cu-item shadow" style="background-color: transparent;">
                
                <u-upload ref="uUpload" :action="action" :auto-upload="false" name="images" :size-type="sizeType"></u-upload>
                <u-button @click="submit">提交</u-button>


            </view>
        </view>
</template>

后端接口文件

代码语言:javascript
复制
class OrderSubmit(APIView):

    def post(self, request):

         # 订单图片对象
          file_obj = request.FILES.getlist('images', None)
          
          function = "submit_order"

         # 上传图片  轮子写在下面
         status, path = upload_files.UploadFilesOnce(request.user, function, file_obj)

        if status == False:
            message["code"] = 10041
            message["message"] = "图片上传失败"
            return JsonResponse(message)

单个 上传轮子文件

代码语言:javascript
复制
def UploadFilesOnce(username,function,files):
    try:

        # 上传图片路径    media/username/task_id/images.jpg
        dir_path = BASE_DIR + "/media/{}/{}/".format(function,username)
        # 如果没有这个路径就创建
        if not os.path.exists(dir_path):
            os.makedirs(dir_path)

        path=''
        # 上传图片
        for f in files:
            # 为了避免覆盖 对名字进行加密
            image_name = datamd5.md5(f.name) + '.jpg'
            with open(dir_path + image_name, 'wb') as dest:
                # 获取路径
                path = path + '/media/{}/{}/'.format(function,username) + image_name + ","
                for chunk in f.chunks():
                    dest.write(chunk)

        return True,path

    except:

        # print(traceback.format_exc())
        return False,None
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2022.03.29 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • VUE文件:
  • 后端接口文件
  • 单个 上传轮子文件
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档