python+Django(4)—表单模块

背景

HTML表单模块在web交互中占有很重要的地位,可以允许用户在表单中输入内容,主要负责数据采集功能。

HTML表单的组成

1.表单在HTML定义中为<form>...</form>标记内的元素集合

2.表单中三个重要属性:action、method、enctype:

1)action属性定义了发送数据要去的位置,它的值必须是一个有效的URL,如截图所示点击前端的按钮之后,会将表格中的数据发送到demo_post_enctype.html

2)method属性定义了如何发送数据。HTTP协议提供了几种执行请求的方法;HTML表单数据可以通过许多不同的方法进行数据传输,其中最常见的是GET方法和POST方法,如截图所示点击前端的按钮之后,会告知后端代码发送的是post请求

3)enctype属性规定在将表单数据发送到服务器之前如何对其进行编码。主要包括值描述

application/x-www-form-urlencoded、multipart/form-data、text/plain三种格式

注:只有 method="post" 时才使用 enctype 属性

表单的处理流程

1、识别出表单中表单元素的有效数据,作为前端页面的待提交项
2、构建一个表单数据集
3、根据enctype属性,对步骤2中的表单数据集进行编码【仅post请求需要】
4、根据action属性和method属性向指定的地址发送步骤3中的数据

表单的提交方式

1、使用submit按钮提交表单 

 <input type="submit" value="提交">

2、使用button按钮提交表单 

 <input type="button" value="提交">

3、使用js进行表单提交,将form表单进行标记,将form表单中的某个元素设置成点击事件,点击时候调用js函数,再用JS。

 $("#id").submit()

HttpRequest对象

每个视图函数的第一个参数都是一个HttpRequest对象,比如截图里面的request参数,有一些有用的属性和方法。

request.path:完整的路径,不含域名,但是包含前导斜线,即/hello/

request.get_host():主机名(即通常所说的“域名”),即“127.0.0.1:8000”

request.META的值是一个Python字典,包含请求的所有HTTP首部,例如用户的IP地址和用户代理(useragent,通常是Web浏览器的名称和版本)。日常写接口测试用例/需要带登录态的页面,一些头部信息可通过request.META来进行获取。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容