轻量级web框架 Flask 01


1.什么是Flask?

  • Flask:轻量级框架依赖Jinjia2 模板引擎Werzeug WSGI web微型框架
  • WSGI:Web Server GateWay InterFace(WEB 网关服务接口)

2. 安装Flask

  • 导入查看是否安装
    • import flask
    • flask.version 查看版本
  • 如果没装的话 安装Flask
  • pip3 install flask
    // 推介使用Pycharm

3.Demo1
from flask import Flask # 导入模块儿

# 构建Flask应用 以便接受用户请求
app = Flask(__name__)

# 装饰器:路由定义 匹配用户访问路径
@app.route('/')
def index(): # 视图函数(MVC  Views)  必须返回一个字符串,表示响应给浏览器的内容
    return 'This is my Flask demo'

@app.route('/Page')
def Page():
    return 'This is Test Page'

# 借助Flask内部服务  启动默认Port = 5000 测试访问
if __name__ == '__main__':
    app.run(debug=True)

4.Flask 路由(route)

  • a
  • a
  • 带参路由
    • 路由中可以携带参数来表示要传递视图中的数据
    • http://show/chinese
    • 1 基本带参路由
      • @app.route(’/show/< name >’)
      • def show(name)
        • #name: 上下必须一致,表示地址栏传递过来的数据
    • 2 多个参数路由
      • @app.route(’/show/< name >/< age >’)
      • def show(name,age)
        • return ‘name:%sage:%s’%(name,age)
    • 3 指定参数类型路由
    • @app.route(’/show/< name >/< int:age >’)
      • def show(name,age):
        • return ‘name:%sage:%s’%(name,age)
      • Flask 中类型转换器 在下面
    • 4 多URL的路由匹配
      • 允许多个URL匹配到同一个视图处理函数
      • @app.route(‘地之1’)
      • @app.route(‘地之2’)
      • def index():
        • return
    • 5 URL的反向解析
      • 正向解析:程序自动解析,根据视图函数访问路径匹配处理函数
      • 反向解析:通过视图函数名称以及参数 找到访问地址
      • 语法:
        • from flask import url_for
        • url = url_for(funcName,args)
          • 1.funcnName
            • 表示的是视图函数的名称
          • args
            • 试图处理函数的的参数
类型转换器 作用
缺省 字符串,除了 /
int: 整数
float: 浮点型
path: 字符串,允许 /

5.Demo2

from flask import Flask,url_for

# 构建Flask应用 以便接受用户请求
app = Flask(__name__)

# 装饰器:路由定义 匹配用户访问路径
@app.route('/')
def index(): # 视图函数(MVC  Views)  必须返回一个字符串,表示响应给浏览器的内容
    return 'This is my Flask demo'

@app.route('/Page')
def Page():
    return 'This is Test Page'

# 带参数的路由
@app.route('/show/')
def show(name):
    return '

传参:%s

'%name # 带多个参数路由 @app.route('/show//') def show_(name,age): return '姓名:%s年龄:%s'%(name,age) # URL反向解析 @app.route('/admin/user/html/uuu') def admin(): return '超级长的访问路径' @app.route('/url') def url(): # 通过admin解析访问属性 uu = url_for('admin') # 将路径构建a标记进行响应 return '访问admin'%uu # 借助Flask内部服务 启动默认Port = 5000 测试访问 if __name__ == '__main__': app.run(debug=True)

6.模板

  • 什么是模板
    • 在Flask终究是能够呈现给哟过户取看的网页结构
    • 在模板中允许使用变量来表示动态数据
    • 在模板中允许使用服务端代码
      Flask是依赖于Jinja2的模板引擎
  • 模板的设置
    • 默认情况下,Flask会在项目工程目录中的一个templates 文件夹中搜索模板
  • 模板的渲染
    • 作用:在视图中,将模板文件先渲染字符串,再响应给客户端浏览器
    • 函数:render_template(‘模板名称.html’)
  • demo
  • @app.route('/') def index(): str = render_template('demo .html') return str

你可能感兴趣的:(吾思伊人如盼君归)