轻量级web框架 Flask 03


1.模板
  1. 静态地址的反向解析
    1. 语法:
      url_for(‘static’,filename = ‘<file_path>’)
    2. 示例:
      <img src = ‘url_for(‘static’ ,filename = ‘img/a.jpg’)’>
  2. 模板的继承
    1. 什么是模板继承
      模板继承大部分与另一个模板相似,使用模板继承简化开发
    2. 语法
      1. 父模板文件
        需要定义出哪些内容在子模版中可以重写
        {% block %}
        定义父模板中正常显示的内容/在子模板中被重写的内容
        {% endblock %}
      2. 子模板文件
        1. 需要指定继承自那个模板
          {% extends ‘父模板名称’ %}
        2. 重写父模板中指定内容
          {% block 块名 %}
          此处的内容会覆盖掉父模板中的同名block的内容
          {% enblock %}

2.修改配置
  1. 构建Flask应用时指定配置信息
    app = Flask(__ name__,
    template_folder=‘模板文件夹名称’,
    static_url_path = ‘静态文件路径’,
    static_folder = ‘静态资源的文件夹名称’)

  2. 启动程序时的运行配置
    app.run(
    debug = True,
    port = 5555, 项目访问端口
    host = ‘0.0.0.0’ 项目访问地址
    )


3.请求(request)和响应(response)
  1. HTTP 协议
    1. 作用:规范了数据如何打包以及传递的
    2. 两大核心:
      1. 请求消息
        由客户端带给服务端的消息
        三部分组成:
        1. 请求起始行
        GET / HTTP/1.1
        2. 请求消息头
        每个以key:value格式的都是消息头
        3. 请求主体
        只有post\put 请求方式才有请求主题
      2. 响应消息
        由服务器带给客户端消息
        三部分:
        1. 响应起始行
          HTTP/1.1 200 OK
        2. 响应消息头
          key:value 方式存在,服务器传递给浏览器的消息
        3. 相应主体
          服务器端相应的数据
  2. 请求对象 - request
    1. 什么是请求
      请求对象中会封装所有与请求相关的信息

    2. 语法
      from flask import request
      request 中常用成员:
      1. scheme : 获取请求协议
      2. method : 获取本次请求方式
      3. args : 获取GET请求的数据提交
      4. form : 获取POST请求的数据提交
      5. cookies:获取cookies相关数据
      6. files :获取上传的文件
      7. path:获取请求的资源地址
      8. full_path:获取请求的资源的完整路径
      9. url:获取完整的请求地址从协议初开始
      10. headers:获取请求消息头信息

    3. 获取请求提交的数据

      1. get 请求方式
        1. get方式的场合
          < from method=‘get’ action=‘xxx’>
          姓名:< input type=‘submit’>< / form>
        2. 通过地址栏访问的全是get请求
          1. < a href = ‘/01-test?参数名=值’ >参数</ a>
          2. windows.location.href = ‘/01-test’
            get请求需要通过request.args 获取请求参数值
            (允许按照字典的方式操作request.args)
      2. post 请求方式
        1. 场合:
          < from method=‘post’>
        2. 获取post请求数据
          通过 request.from 获取post方式提交的数据
          (可以按照字典的方式操作 request.from)
from flask import Flask,render_template,request

app = Flask(__name__)


@app.route('/01-parent')
def parent_views():
    return render_template('01-parent.html')

@app.route('/01-child')
def chils_views():
    return render_template('01-child.html')

# 03-request 响应路由
@app.route('/03-request')
def request_view():
    scheme = request.scheme
    method = request.method
    args = request.args
    form = request.form
    cookies = request.cookies
    files = request.files
    path = request.path
    full_path = request.full_path
    url = request.url
    headers = request.headers
    if 'Referer' in request.headers:
        referer = request.headers['Referer']
    return render_template('03-request.html',params = locals())

#05-get 接收get请求提交的数据
@app.route('/05-get')
def get_views():
    name = request.args['name']
    age = request.args['age']
    return '<h1>提交的数据name:%sage:%s</h1>'%(name,age)

#06-get 接收post提交的数据
@app.route('/06-post',methods=['GET','POST'])
def post_views():
    if request.method == 'GET':
        return render_template('06-post.html')
    uname = request.form.get('uname')
    upwd = request.form.get('upwd')
    return '名字:%s密码:%s'%(uname,upwd)

if __name__ == '__main__':
    app.run()
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值