当前位置: 首页 > news >正文

英文专业的网站建设西安网站seo技术厂家

英文专业的网站建设,西安网站seo技术厂家,工程设计与建设 网站,快速建网站软件之前在网上搜了好多教程,一直没有找到合适自己的,要么只有前端部分没有后端,要么就是写的不是很明白。所以还得靠自己摸索出来后,来此记录一下整个过程。 其实就是不要用默认的 action,要手动实现上传方式 http-reque…

之前在网上搜了好多教程,一直没有找到合适自己的,要么只有前端部分没有后端,要么就是写的不是很明白。所以还得靠自己摸索出来后,来此记录一下整个过程。

  • 其实就是不要用默认的 action,要手动实现上传方式 http-request,然后再传给后端进行各种操作了
    • 这里隐藏了文件展示列表
    • 展示了上传文件的个数
    • 文件去重上传
    • 也对上传文件的格式做了限制
    • 在点击创建的时候 progress 会随着上传进度动态变化

环境安装什么的就不讲了,直接上代码好吧,这个是样式图

这是vue3代码

<template><el-upload class="upload-demo form-item" v-model:file-list="fileList" drag multiple :http-request="httpRequest" :show-file-list="false" auto-upload="false" :accept=upload_accept><el-icon class="el-icon--upload"><upload-filled /></el-icon><div class="el-upload__text">拖拽 / 点击上传文件 ( zip, jpg, png ……)</div><template #tip><div class="el-upload__tip">已上传 {{ fileListLength }} 个文件</div></template></el-upload><el-progress :percentage="progress.curr" :color="progress.color" /><el-button type="info" class="btn" @click="removeFile">清空文件</el-button><el-button type="primary" class="btn" @click="create">创建</el-button>
</template><script setup lang="ts">
import { ref, watch } from "vue";
import http from "@/utils/axios/index";
import { UploadFilled } from '@element-plus/icons-vue';
import { ElMessage } from 'element-plus';const public_elmsg_success = (msg: string) => {ElMessage({ type: 'success', duration: 1000, showClose: true, message: msg })
};const public_elmsg_warning = (msg: string) => {ElMessage({ type: 'warning', duration: 1000, showClose: true, message: msg })
};const public_elmsg_error = (msg: string) => {ElMessage({ type: 'error', duration: 1000, showClose: true, message: msg })
};const upload_accept = ref(".JPG,.PNG,.JPEG,.PCD,.MP4,.AVI,.DAT,.DVR,.VCD,.MOV,.SVCD,.VOB,.DVD,.DVTR,.DVR,.BBC,.EVD,.FLV,.RMVB,.WMV,.MKV,.3GP,.ZIP"); // 限制了上传文件的格式 大写后缀
const upload_lower = ref(upload_accept.value.split(',').map((item: any) => item.toLowerCase())); // 限制上传文件的格式 小写后缀
const fileList: any = ref([]);
const fileList1: any = ref([]);
const fileListLength = ref(0);const progress = ref({ "curr": 0, "color": "orange" })watch(fileList1, (newVal, oldVal) => {console.log(newVal, oldVal)fileListLength.value = newVal.value;fileListLength.value = newVal.length;
}, { immediate: true, deep: true });const httpRequest = (options: any) => {let nameList: Array<any> = [];fileList1.value.forEach((item: any) => {nameList.push(item.name);});const file_suffix = options.file.name.split(".");if (!upload_lower.value.includes(`.${file_suffix[file_suffix.length - 1]}`)) {public_elmsg_warning(`文件 ${options.file.name} 格式不正确`);return;}if (nameList.includes(options.file.name)) { }else {fileList1.value.push(options.file)}fileList.value = fileList1.value;
}const removeFile = () => {fileList.value = [];fileList1.value = [];progress.value.curr = 0;
}const create = () => {const formData = new FormData()fileList1.value.forEach((file: any) => {console.log(file)formData.append('files', file)})http.post("task/create/", formData, {headers: { "Content-Type": "multipart/form-data" }, onUploadProgress(progressEvent: any) {progress.value.curr = Math.round((progressEvent.loaded * 100) / progressEvent.total)if (progress.value.curr == 100) { progress.value.color = 'green' }else { progress.value.color = 'orange' }},}).then((res: any) => {if (res.code == 0) {public_elmsg_success("任务创建成功")}else { public_elmsg_error(res.msg) }});
}
</script>

v3版本的 djagno 代码

from loguru import logger
from django.http.response import JsonResponse
from django.views.decorators.csrf import csrf_exempt@csrf_exemptdef create_task(request):files = request.FILES.getlist('files')for fit in files:logger.info(f"name: {fit.name} size: {round(fit.size/ 1024 / 1024 / 1024, 5)} G")# 保存文件#  with open(f"{os.sep.join(['.', fit['name']])}", mode="wb") as f:#         f.write(fit)return JsonResponse({"code": 0, "msg": "success"})
http://www.yidumall.com/news/23096.html

相关文章:

  • 世安建设集团有限公司网站注册公司流程和费用
  • 百度搜不到自己的网站苏州网站优化排名推广
  • 宠物网站建设需求分析nba最新消息交易
  • 人力资源和社会保障部职业资格证书seo是什么技术
  • 利用js做网站起名最好的网站排名
  • 上海互联网公司北京网站优化技术
  • 做网站上传照片的尺寸临沂做网站建设公司
  • 外卖网站设计全能优化大师
  • 杭州手机网站建设网站百度权重查询
  • 湖南汽车软件网站建设网络推广怎么赚钱
  • 医院为什么要做门户网站建设企业软文怎么写
  • 怎样做家普网站热门关键词查询
  • 淘宝客推广网站怎么做武汉seo招聘网
  • 如何做网站庆祝她生日快乐网络关键词优化方法
  • 做现货需要关注的网站seo销售
  • 建设银行网站打不开怎么办端点seo博客
  • 保险微网站制作微信crm
  • 二 建设电子商务网站的必要性百度权重4网站值多少钱
  • Wordpress动图主题网站性能优化的方法有哪些
  • 做网站要哪些架包百度今日数据统计
  • 如何做推广麦当劳的网站搜索引擎优化营销
  • 网站开发能从事那些职业网站收录情况
  • 做百度网站电话号码网络营销岗位技能
  • 网站的动态是什么意思技能培训有哪些
  • 临沂网站建设怎么样资源
  • 公司注册网站有安全风险怎么注销深圳优化seo排名
  • 手机网站开发 图库类四川seo整站优化费用
  • 虹口建设机械网站推广发帖网站
  • 网站公示如何做链接网站推广服务商
  • 安徽品质网站建设创新上海培训机构白名单