Django学习手册 - 前端input数据获取
view获取数据方法归纳:
#请求meta数据
request.mata(...)
request.method(POST,GET,PUT)
#从meta里面获取数据
request.path_info
request.COOKIES #请求body数据
request.POST(从body里面获取数据)
request.FILES(从body里面获取数据)
request.GET
request.xxx.getlist
请求body数据(以下都是请求body数据)
前端页面代码:(整个复制即可)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
body{
margin: 0;
}
.body_div{
position: absolute;
left: 40%;
top: 10%;
}
label{
display: inline;
}
</style>
</head>
<body>
<div class="head_div">
</div>
<div class=" body_div">
<h2>
前端input控件 提交数据至后台
</h2>
<br>
<form action="/index/" method="post" enctype="multipart/form-data">
<p>text框:
<label>text框:<input type="text" name="text_1" \></label>
</p>
<p>密码框:
<label>pwd框:<input type="password" name="pwd_2" \></label>
</p>
<br>
<p>单选框:
<label for="r1">radio框1:</label><input value="1" type="radio" name="radio_3" id="r1" \>
<label for="r2">radio框2:</label><input value="2" type="radio" name="radio_3" id="r2" \>
<label for="r3">radio框3:</label><input value="3" type="radio" name="radio_3" id="r3"\>
</p>
<p>多选框:
<label for="c1">checkbox框1:</label><input type="checkbox" value="1" name="checkbox_4" id="c1" \>
<label for="c2">checkbox框2:</label><input type="checkbox" value="2" name="checkbox_4" id="c2" \>
<label for="c3">checkbox框3:</label><input type="checkbox" value="3" name="checkbox_4" id="c3"\>
</p>
<br>
<p>单选下拉框:
<select name="select_5">
<option value="A">A</option>
<option value="B">B</option>
<option value="C">C</option>
<option value="D">D</option>
<option value="E">E</option>
</select>
</p>
<p>多选下拉框:
<select name="select_6" multiple="multiple">
<option value="AA">AA</option>
<option value="BB">BB</option>
<option value="CC">CC</option>
<option value="DD">DD</option>
<option value="EE">EE</option>
</select>
</p>
<br>
<p>文本上传框:
<input type="file" name="file_7" \>
</p>
<input type="submit" value="提交" \>
</form>
</div>
</body>
</html>
前端提交给后台数据是根据 name 参数 传递的,传递的数值 是value 属性。
text框:name= text_1
pwd框:name= pwd_2
radio框:name= radio_3
checkbox框:name=checkbox_4
select下拉框: name=select_5
select 多选下拉框:name=select_6
file文件上传: name=file_7
后端views python代码:
from django.shortcuts import render
# Create your views here.
def index(request):
if request.method == "POST":
t1 = request.POST.get("text_1",None)
t2 = request.POST.get("pwd_2",None)
t3 = request.POST.get("radio_3",None)
t4 = request.POST.getlist("checkbox_4",None)
t5 = request.POST.get("select_5",None)
t6 = request.POST.getlist("select_6",None)
# t7 = request.POST.get("file_7")
t7 = request.FILES.get("file_7")
print(
"text:",t1,'-----',
"password",t2,'-----',
"radio",t3,'-----',
"checkbox",t4,'-----',
"select_单选",t5,'-----',
"select_多选",t6,'-----',
"文件上传",t7.name
)
f = open(t7.name, mode="wb")
for i in t7.chunks():
f.write(i)
f.close()
return render(request,"index.html")
给定目录保存文件:(注意1.必须创建给定文件,2.当前目录存在时,目录文件不需要加/ )
t7 = request.FILES.get("file_7")
file_path = ''.join(('static/',t7.name))
f = open(file_path, mode="wb")
for i in t7.chunks():
f.write(i)
f.close()
配置URL:

测试获取到的数值:

获取的文档:(在当前的目录里面)

Django学习手册 - 前端input数据获取的更多相关文章
- Django学习手册 - Form 插件
""" 核心: from django import formsfrom django.forms import fieldsfrom django.forms impo ...
- Django学习手册 - 模板语言(前端获取后台数据)
先在views视图内,定义列表数据,以及字典数据.运用render函数传递两个列表数据至前端. from django.shortcuts import render list_info = [ {& ...
- Django学习手册 - ORM 单表数据获取
Django 单表数据的获取: 先建立数据表格 from django.db import models # Create your models here. class userinfo(model ...
- Django学习手册 - cookie / session
cookie """ cookie属性: obj.set_cookie(key,value,....) obj.set_signed_cookie(key,value,s ...
- Django 学习手册 - 下载数据库表格(XLS/CSV)
下载XLS表格方式: 前置: 需要安装xlwt模块 views : def export_users_xls(request): response = HttpResponse(content_typ ...
- Django学习手册 - CURD组件
CURD CURD是一个数据库技术中的缩写词,一般的项目开发的各种参数的基本功能都是CURD.作用是用于处理数据的基本原子操作. 它代表创建(Create).更新(Update).读取(Retriev ...
- Django学习手册 - 权限管理(二)
从数据库获取数据后,对数据进行清洗 目标: 数据1,存放至session 中的数据 数据2,显示至前端的菜单数据 清洗数据: 1.session存放的数据:(menu_leaf_dict) 2.前端菜 ...
- Django学习手册 - 登录验证码
生成验证码函数 import random from PIL import Image, ImageDraw, ImageFont, ImageFilter _letter_cases = " ...
- Django学习手册 - ORM - ImageField数据类型
前置步骤 setting.py文件配置: 添加app目录 INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'djan ...
随机推荐
- php的扩展配置
第一步:在php的安装目录下找到php.ini-development这个文件,并复制一个副本,修改这个副本的文件名为:php.ini 如下图我的目录为: 第二步:打开这个php.ini,修改 将这里 ...
- C++: typedef与template的配合使用;
利用STL的vector能够实现多维矩阵,但是写起来不怎么好看,使用typedef定位为 固定的格式: //多维矩形,vector实现: template<class T> class i ...
- Mac影音多媒体工具软件推荐
今天和大家分享软件专题:「影音多媒体工具」,今天的「影音多媒体工具」主要包含音乐播放.音频编辑.视频播放.视频编辑.截图录像等类别的软件. 有需要其他类型的软件,可在评论区留言或私信于我[磨人的小妖精 ...
- jmeter5.0 while controller使用总结
while controller 配合sql使用的方式 在while控制器条件中填空,这样当里面的请求断言失败后就会跳出循环 在while控制器条件中填LAST,当里面的请求断言失败后就会跳出循环,如 ...
- Reference-TMB
Paper Name:Targeted Next Generation Sequencing Identifies Markers of Response to PD-1 Blockade Adress ...
- Nginx自定义404页面并返回404状态码
Nginx定义404页面并返回404状态码, WebServer是nginx,直接告诉我应该他们配置了nginx的404错误页面,虽然请求不存在的资源可以成功返回404页面,但返回状态码确是200. ...
- Dubbo服务的运行方式
1.使用Servlet容器运行(Tomcat.Jetty)等 ---不可取 缺点:增加复杂性(端口,管理) 浪费资源(内存) 2.自建Main方法类来运行(Spring容器) ---不建议(本地调试可 ...
- [JVM-2]常用JVM命令参数
(1)-Xms20M 表示设置JVM堆内存的最小值为20M,必须以M为单位 (2)-Xmx20M 表示设置JVM堆内存的最大值为20M,必须以M为单位.将-Xmx和-Xms设置为一样可以避免JVM内存 ...
- .aspx、MasterPage、.ascx加载顺序
1. Master page中的用户控件的 page_init2. Aspx页面中的用户控件的 page_init3. Master page的page_init4. Aspx ...
- javascript的作用域和闭包(三)闭包与模块
一些很重要的说明:前面三篇博客详细的介绍了,引擎与编译器和作用域的关系,重点需要理解的是编译器中的分词与词法分析,JavaScript的特有的“赋值操作的左右侧”引用操作:编译阶段的词法作用域的工作原 ...