005:Django Form请求

2021-11-22 14:30:06 浏览数 (1)

本章知识点

  1. Django 请求
  2. Django Form表单
  3. 请求与相应 知识点讲解

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表单 请求与相应

0 人点赞