本章知识点
- Django 请求
- Django Form表单
- 请求与相应 知识点讲解
1. Django 请求 传递数据的方式 Form表单 Ajax Url get请求 我们研究request参数 在视图当中,大部分函数有request参数,request这个参数是当URL调用视图函数的时候接收 传递的请求。 Request接收的就是一个请求 Request.META 请求当中携带的参数 HTTP_USER_AGENT:Mozilla/5.0 (Windows NT 6.1; WOW64; rv:64.0) Gecko/20100101 Firefox/64.0 浏览器版本 Form表单 Action 请求的地址 地址为空,请求自己的地址 Method 请求的方式 Post 发送,密文的 Get 获取,明文 在URL之后以?开始,以键=值的形式以&分割 Input name是传递参数时候的键 Submit
用指定方法向指定的地址传递指定的参数 1、调整了form表单的action和method参数
2、调整提交按钮
我们发起post请求出错了 Csrf错误
不要着急 Csrf 跨域请求攻击
Django为了防止csrf攻击,定义csrf中间件
所以,所有的post请求多应该在form表单下的第一行添加csrftoken标签
假如我们的视图函数需要接收post请求,那么,我们的加载模块必须是render Render 和其他方法唯一的不同就是第一个参数需要是request
Hidden 是input隐藏域
视图接收数据 request.method #返回请求的方式 #返回值:POST GET request.POST #接收所有POST过来的数据 request.GET # 接收所有GET过来的数据
建模
同步数据库
提交到HTML关注的问题
HTML提交到views关注
STDBStudentviews.py #导入数据库 from django.shortcuts import render from Student.models import UserInfo def register(request): “”" request.method #返回请求的方式 #返回值:POST GET request.POST #接收所有POST过来的数据 request.GET # 接收所有GET过来的数据 “”" if request.method == “POST” and request.POST: #如果请求方式为post并且port有值 firstName = request.POST.get(“firstName”) #这里捕获的是前端的name lastName = request.POST.get(“lastName”) # 这里捕获的是前端的name inputEmail = request.POST.get(“inputEmail”) # 这里捕获的是前端的name inputPassword = request.POST.get(“inputPassword”) # 这里捕获的是前端的name confirmPassword = request.POST.get(“confirmPassword”) # 这里捕获的是前端的name
代码语言:javascript复制 #打开数据库进行存储
user = UserInfo() #实例化模型
user.firstname = firstName
user.lastname = lastName
user.email = inputEmail
user.password = inputPassword
user.save() #保存
return render(request,"register.html",locals())
本章总结 Django 请求 Django Form表单 请求与相应