django请求接收及文件上传
在写后端交互页面的时候常常会遇到接收来自前端页面请求的情况,例如
在写注册页面的时候,会提交一些页面信息,这时需要分三种情况讨论
第一种,接收单项信息:
v = request.POST.getlist('gender')
print(v)
第二种,接收多项信息:
v = request.POST.getlist('favor')
print(v)
第三种,接收文件信息:
接收文件信息的过程比较复杂,第一步需要在HTML文件的form表单李添加
enctype="multipart/form-data",以便后台程序能够区分接收包含post的文件数据
第二步需要将接收到的文件数据循环迭代写入本地文件,然后进行存储:
obj = request.FILES.get('wenjian')
print(obj,type(obj),obj.name)
import os
file_path =os.path.join('upload',obj.name)
f = open(file_path,mode="wb")
for i in obj.chunks():
f.write(i)
f.close()
from django.core.files.uploadedfile import InMemoryUploadedFile
django请求接收及文件上传的更多相关文章
- Web---演示Servlet的相关类、表单多参数接收、文件上传简单入门
说明: Servlet的其他相关类: ServletConfig – 代表Servlet的初始化配置参数. ServletContext – 代表整个Web项目. ServletRequest – 代 ...
- Django 实现简单的文件上传
今天分享一下Django实现的简单的文件上传的小例子. 步骤 创建Django项目,创建Django应用 设计模型 处理urls.py 以及views.py 设计模板,设计表单 运行项目,查看数据库 ...
- Dajngo——10 请求与响应 文件上传 GET和POST请求 类视图
Dajngo——10 HttpRequest对象 HttpResponse对象及子类 form标签中的GET和POST GET提交方式 POST提交方式 request得GET和POST属性 文件上传 ...
- .net mvc 超过了最大请求长度 限制文件上传大小
在我们的项目中遇到"超过了最大请求长度"如下图所示,是因为IIS默认请求长度4M,当请求长度大于这个值的时候报错,下面是解决方案. 解决方案:修改web.config文件 1.注意 ...
- 基于 Django的Ajax实现 文件上传
---------------------------------------------------------------遇到困难的时候,勇敢一点,找同学朋友帮忙,找导师求助. Ajax Ajax ...
- Netty接收HTTP文件上传及文件下载
文件上传 这个处理器的原理是接收HttpObject对象,按照HttpRequest,HttpContent来做处理,文件内容是在HttpContent消息带来的. 然后在HttpContent中一个 ...
- django中的Ajax文件上传
主要介绍两个 1.ajax文件上传 2.写路由器 3.创建对应的函数 4.file_put.html代码 <!DOCTYPE html> <html lang="en&qu ...
- Java中request请求之 - 带文件上传的form表单
常用系统开发中总免不了显示图片,保存一些文件资料等操作. 这些操作的背后,就是程序员最熟悉的 enctype="multipart/form-data"类型的表单. 说起file类 ...
- django学习笔记 多文件上传
习惯了flask 再用django 还是不太习惯 好麻烦 配置文件也忒多了 不过还是要学的 之前只能一个一个文件长传,这次试试多个文件 不适用django的forms创建表单 直接在html中使用 ...
随机推荐
- if的{}的省略
if (表达式) 语句; else if(表达式) 语句; else if(表达式) 语句; else 语句; 对应: if (表达式) { 语句1; 语句2; 语句N;//多个语句组成代码块 } e ...
- 基于Anaconda安装tensorflow-GPU和caffe-GPU
1.创建虚拟环境 我们先创建一个用于caffe和tensorflow共存的虚拟环境,安装完成后激活环境. conda create -n caffe_tf_36 python=3.6 source a ...
- c#一步一步实现ORM(二)
c#一步一步实现ORM(二) 上一篇描述了简单的思路,这一片我们来稍微细化一下 1插入的时候忽略某些字段 public int Insert<T>(T o, params string[] ...
- 《C和指针》---指针
内存和地址 计算机的内存由许多的位(bit)组成,每个位可以容纳值0或1. 由于一个位所能表示的范围太有限,所以通常许多位合成一组作为一个单元. 这些位置的每一个都被称为字节(byte),每个字节包含 ...
- 【java】-- 多线程快速入门
1.什么是进程?什么是线程?两者区别? 1.每个正在系统上运行的程序都是一个进程,每个进程包含一到多个线程,多线程处理就是允许一个进程中在同一时刻执行多个任务. 2.线程是一组指令的集合,或者是程序的 ...
- npm的一些常用命令(在国内,建议使用cnpm,在淘宝镜像里面下载就行)
npm的一些常用命令(在国内,npm操作可能会比较慢,建议使用cnpm,在淘宝镜像里面下载就行,用法和npm一样) cnpm安装地址,直接安装 npm install cnpm -g --regist ...
- 移动端滑动效果 swiper 4.0.7
<!DOCTYPE html><html lang="en"><head> <meta charset="utf-8" ...
- NOIP-铺地毯
题目描述 为了准备一个独特的颁奖典礼,组织者在会场的一片矩形区域(可看做是平面直角坐标系的第一象限)铺上一些矩形地毯.一共有n张地毯,编号从1到n.现在将这些地毯按照编号从小到大的顺序平行于坐标轴先后 ...
- STS的安装以及IDEA安装和破解过程
一.STS的下载 1·下载地址:直接百度搜索STS,选择Download STS 3 2.选择电脑对应的版本 直接下载 3.安装包解压后在有jdk的情况下就可以直接使用 二.IDEA的安装 下载网址: ...
- Wireshark简单使用教程1——附视频
目录 Wireshark的简介 Wireshark面向的用户 Wireshark的下载安装 Wireshark抓取一个流量包 内容 1.Wireshark的简介 Wireshark(前称Etherea ...