flask(3)

1.模板
     1.静态文件地址的反向解析
         url_for('static',filename='<file_path>')
         ex:
             url_for('static',filename='images/b041.jpg')
             结果: /static/images/b041.jpg
     2.模板的继承
         1·什么是模板的继承
             模板的继承类似于类的继承,如果一个模板中出现的内容来自于另一个模板的话,那么就可以使用继承的方式来简化开发
         2.语法
             1.父模板
                 需要定义出哪些东西在子模板中是可以被重写的
                 {% block 块名 %}
                     父模板中正常显示的内容
                 {% endblock %}
                 block:
                     1.在父模板中是可以正常显示的,没有任何影响
                     2.在字模板中是可以被重写的
             2.子模板
                 1.需要指定继承自哪个父模板
                     {% extends '父模板名称' %}
                 2.重写父模板中对应的内容
                     {% block 块名 %}
                         此处编写的内容会覆盖掉父模板中同名block的内容

                        允许通过 {{super()}} 来调用父模板中的内容
                     {% endblock %}
2.修改配置
     1.构建Flask 应用时允许指定的配置信息
         app=Flask(
             __name__,
             template_folder='muban',
             static_url_path='/s',
             static_folder='/sta')

            template_folder : 指定存放模板的文件夹名称
             static_url_path : 访问静态资源的路径
                 http://localhost:5000/s/xxx 查找静态资源文件
             static_folder : 指定存放静态文件的目录名称
                 在项目的根目录中 ,有一个名为 sta 的目录用于存放静态文件
     2.启动程序的运行配置
         app.run(
             debug = True,
             port = 5555,
             host = '0.0.0.0'
         )

        host : 指定访问地址,0.0.0.0 表示局域网内的任何机器都可以访问网站
3.请求(request) 和 响应(response)
     1.HTTP协议
         Request Headers - 请求消息头
         Response Headers - 响应消息头
     2.请求对象 - request
         request - 请求对象,封装了所有与请求相关的信息。如:请求数据,请求消息头,请求路径,... ...
         在Flask中,要使用 request 的话,必须先导入
         from flask import request

        1.request的常用成员
             1.scheme : 获取请求方案(协议)
             2.method : 获取本期请求的请求方式(重点)
             3.args : 获取使用get请求方式提交的数据
             4.form : 获取使用post请求方式提交的数据
             5.cookies : 获取 cookies 的相关信息
             6.headers : 获取 请求消息头 的相关信息
             7.files : 获取上传的文件
             8.path : 获取请求的url地址(进入到主机后的请求资源地址,不包含请求参数)
             9.full_path : 获取请求的url地址(进入到主机后的请求资源地址,包含请求参数)
             10.url : 获取完整的请求地址,从协议开始的地址
         2.获取请求提交的数据
             1.get 请求方式
                 1.表单允许实现get请求
                     <form action="" method="get">
                         姓名:<input name="uname">
                     </form>
                 2.在请求地址后拼请求提交的参数
                     http://localhost:5000/06-get?uname=xxx&upwd=xxx

                获取 get 请求方式提交的数据 :
                 request.args 封装的是get请求的数据
             2.post 请求方式
                 post请求只有在表单中才能够被触发
                 <form method="post">

                获取 post 请求提交的数据 :
                     request.form 封装的就是 post 请求的数据,类型为字典

                    request.form['name'] : 获取 name 对应的值
                     request.form.get('name') : 获取 name 对应的值
                     request.form.getlist('name') : 获取 name 列表数据(如复选框,下拉列表)
                     练习:
                         1.访问地址为 http://localhost:5000/07-form-post 能够去往07-form.html模板
                         2.在 07-form.html 中
                             包含一个表单,post 提交方式,提交地址为 /07-post,控件如下
                             1.文本框 - 用户名
                             2.密码框 - 用户密码
                             3.文本框 - 用户邮箱
                             4.文本框 - 真实姓名
                             5.提交按钮
                         3.在 07-post 中
                             获取所有请求提价的数据并打印在终端中

猜你喜欢

转载自www.cnblogs.com/py321/p/9879579.html