利用Django实现文件上传
一、form表单的形式上传文件
1、路由
urlpatterns = [
path("upload/", views.UploadView.as_view(),)
]
2、视图
from django.views import View
class UploadView(View):
def get(self,reqeust):
return render(reqeust,"index.html") #get请求时,返回一个HTML页面
def post(self,reqeust):
put_file = reqeust.FILES.get("put_file") #上传文件的post请求时,获取文件内容-->putfile
print(put_file.name) #打印文件名
with open(put_file.name,"wb") as f: #将文件内容写入到文件中保存
for line in put_file:
f.write(line)
return HttpResponse("上传成功!") #返回结果提示
3、模板index.html
<h3>基于form表单的文件上传</h3> <form action="/upload/" method="post" enctype="multipart/form-data">
<input type="file" name="put_file">
<input type="submit">
</form> {#提交文件时,必须设置为这个参数:enctype="multipart/form-data"#}

二、Ajax的形式上传文件
1、后端代码和form表单上传的形式一样
2、前端代码:
<h3>基于Ajax的文件上传</h3>
<div>
<input type="file" class="put_file">
<input type="button" value="提交" class="btn">
<span class="tip"></span> {# 上传成功后的提示信息显示位置 #}
</div> <script>
//提交按钮的点击事件
$(".btn").click(function () { //定义一个变量formdata,作为要发送的数据
var formdata = new FormData(); //将formdata组成键值对的形式,put_file=$(".put_file")[0].files[0],也就是:key=value,value是文件的内容
formdata.append("put_file",$(".put_file")[0].files[0]); $.ajax({
url:"/upload/",
type:"post",
data:formdata, //要发送的数据,为上面准好的 --> formdata
contentType:false,
processData:false,
success:function (res) {
$(".tip").html(res); //显示上传成功后的提示信息
}
})
})
</script>

利用Django实现文件上传的更多相关文章
- Java 利用SWFUpload多文件上传 session 为空失效,不能验证的问题 swfUpload多文件上传
Java 利用SWFUpload多文件上传 session 为空失效,不能验证的问题(转) 我们都知道普通的文件上传是通过表单进行文件上传的,还不能达到异步上传的目的.通过使用某些技术手段,比如jqu ...
- python Django之文件上传
python Django之文件上传 使用Django框架进行文件上传共分为俩种方式 一.方式一 通过form表单进行文件上传 #=================================== ...
- day56:django:csrf_token&文件上传
目录 1.csrf介绍 2.django实现csrf_token认证 3.django实现文件上传 csrf介绍 什么是csrf? csrf:跨站请求伪造.攻击者通过HTTP请求将数据传送到服务器,从 ...
- Azure Terraform(十二)利用 Terraform 将文件上传到 Azure Blob Storage
一,引言 本篇文章中,我门将学习如何利用 Terraform 将 文件以及文件夹上传到 Azure Blob Storage,这个对于我们来说很方便,可以将一些不重要的内容也存储在源代码管理工具中! ...
- Django普通文件上传
前端代码: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF ...
- Django(十七)文件上传
http://www.cnblogs.com/wupeiqi/articles/5703697.html - 文件上传 - 普通上传 - 自定义页面上传按钮 ...
- selenium+java利用AutoIT实现文件上传
转自https://www.cnblogs.com/yunman/p/7112882.html?utm_source=itdadao&utm_medium=referral 1.AutoIT介 ...
- 框架----Django之文件上传
一.文件上传 1. 浏览器访问 http://127.0.0.1:8000/f1/ http://127.0.0.1:8000/f2/ 2. urls from django.conf.urls im ...
- Django的文件上传以及预览、存储
思路: 文件上传通过前端的input标签,input设置display:none属性. 内容显示需要让前端通过<img>标签读取图片内容,可以通过<label>标签连接< ...
- Angular14 利用Angular2实现文件上传的前端、利用springBoot实现文件上传的后台、跨域问题
一.angular2实现文件上传前端 Angular2使用ng2-file-upload上传文件,Angular2中有两个比较好用的上传文件的第三方库,一个是ng2-file-upload,一个是ng ...
随机推荐
- MogDB 2.1.1 初始化参数概要说明
MogDB 2.1.1 初始化参数概要说明 本文出处:https://www.modb.pro/db/394787 MogDB 数据库安装完成后,官方文档提供了刷新参数的脚本,推荐执行脚本来进行初始化 ...
- 【鸿蒙千帆起】高德地图携手HarmonyOS NEXT,开启智能出行新篇章
2024年1月18日下午,华为举办了鸿蒙生态千帆启航仪式,对外宣布HarmonyOS NEXT星河预览版现已开放申请,同时,首批200+鸿蒙原生应用加速开发,鸿蒙生态设备数量更是突破了8亿大关.这些进 ...
- HarmonyOS应用开发Web组件基本属性应用和事件
一.Web组件概述 Web组件用于在应用程序中显示Web页面内容,为开发者提供页面加载.页面交互.页面调试等能力. ● 页面加载:Web组件提供基础的前端页面加载的能力,包括加载网络页面.本地页面 ...
- HarmonyOS应用开发—资源分类与访问
应用开发过程中,经常需要用到颜色.字体.间距.图片等资源,在不同的设备或配置中,这些资源的值可能不同. ● 应用资源:借助资源文件能力,开发者在应用中自定义资源,自行管理这些资源在不同的设备或配置中 ...
- IaC 管理新思路:Walrus 和 Terraform 的差异化探索
Terraform 的社区版本及商业化版本,让其成为在基础设施即代码(IaC)领域中可靠的部署和管理平台.尽管目前 Terraform Cloud/Enterprise 仍然是最为广泛采用的 IaC ...
- 进阶 stack smashing--canary 报错利用 && environ泄露栈地址
进阶 stack smashing--canary 报错利用 && environ泄露栈地址 这部分是对进阶stack smashing的使用,以及对 environ的认识,我们可以看 ...
- linux 性能自我学习 ———— 关于内存 [七]
前言 内存的基本知识,将在操作系统篇中详细介绍,这里只说明如何排查问题. 正文 内存的分配和回收: 在malloc 是c 标准库中的内存分配函数,对应到系统调用上,有两种实现方式,一种是brk()和 ...
- js 连接数据库 提示:ActiveXObject is not defined
ActiveXObject is not defined 最近比较闲,上班瞎捣鼓一下,没想到报错了,提示ActiveXObject is not defined 大概是在js连接数据库时new对象使用 ...
- 05_理解MVVM模型
总结: MVVM模型: 1.M:模型(Model):data中是的数据 2.V:视图(View):模板代码 3.VM:视图模型(ViewModel):V ...
- 04_el和data的两种写法
总结: data与el的两种写法 1.el的两种写法 (1)new Vue时需要配置el属性: (2)先创建Vue实例,然后再通过vm.$mount('#root')指 ...