美文网首页百人计划
python+Django(4)—表单模块

python+Django(4)—表单模块

作者: 小盼盼_1 | 来源:发表于2020-10-30 15:43 被阅读0次

    背景

    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来进行获取。

    相关文章

      网友评论

        本文标题:python+Django(4)—表单模块

        本文链接:https://www.haomeiwen.com/subject/ihldvktx.html