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 ...
随机推荐
- C++ template一些体悟(3)
其实没啥体悟,因为还没有感受到这些例子的作用,记一下先 #include <iostream> using namespace std; class alloc { }; template ...
- bitmap的使用
https://blog.csdn.net/csdnsevenn/article/details/82230049 使用bitmap来解决: 2的32次方大概是42亿个数,所以这么多数中,存在的为1, ...
- NTT学习笔记
和\(FFT\)相对应的,把单位根换成了原根,把共轭复数换成了原根的逆元,最后输出的时候记得乘以原\(N\)的逆元即可. #include <bits/stdc++.h> using na ...
- ansible小结常用模块
根据官方的分类,将模块按功能分类为:云模块.命令模块.数据库模块.文件模块.资产模块.消息模块.监控模块.网络模块.通知模块.包管理模块.源码控制模块.系统模块.单元模块.web设施模块.window ...
- python对象的多重继承
一个从多个父类继承过来的子类,可以访问所有父类的功能.并不推荐使用. 多重继承最简单有用的形式是mixin.假设在之前Contact类增加一个功能,允许给self.email发送一封邮件. class ...
- python3 aes加解密
# encoding: utf-8 import xlrd import os import yaml import logging.config from Crypto.Cipher import ...
- 【.NET】asp.net Redirect 图片路径
#需求: 前端通过<img>的src向服务端请求图片信息,如果不存在想要的图片,那么就返回一张默认路径下的图片: #实现: <img class="related_reso ...
- Oracle 去重并显示所有列数据
一.原始数据(默认会生成一个 rownum 的序列,如下图的第一列) select t.* from ZD_DIC t where t.zdlx = '人员类型' 二.先分组,再给组内的内容进行排序 ...
- HTML5 accesskey的用法
<button onclick="start()" accesskey="s">开始</button> <button oncli ...
- [NIO-1]缓冲区
常用的是ByteBuffer.CharBuffer