Flask入门

164 阅读3分钟

flask web开发入门

根据flask web开发 基于python的web开发实战一书学习记录flask

安装

  1. 创建一个应用目录

    mkdir flasky
    cd flasky
    
  2. 虚拟环境

    创建好工作目录之后,就需要安装flask 了,安装flask最便捷的方式就是使用虚拟环境。

    虚拟环境是python解释器的一个私有副本,在这个环境中我们可以安装私有包,不会影响系统中安装的全局python解释器。

  3. 在python3中创建虚拟环境

    python3中,虚拟环境有python标准库中的venv包原生支持。

    创建虚拟环境的命令格式如下:

    python3 -m venv 虚拟环境名

    -m venv 选项的作用:以独立的脚步运行标准库中的venv包,后面的参数为虚拟环境的名称。

    通常我们创建虚拟环境的名称就是 venv,当然可以使用其他名称。

    确保在我们的工作目录flasky下,执行:

    python3 -m venv venv

    执行完毕之后在根目录下出现一个名为venv的子目录,这就是我们创建的全新的虚拟环境,包含整个项目专用的python解释器。

  4. 使用虚拟环境

    使用虚拟环境,首先要将其”激活“,在Linux下使用如下命令:

    source venv/bin/activate

    Windows系统是:

    venv\Scripts\activate

    虚拟环境被激活后,里面的python解释器的路劲会添加到当前命令会话的PATH环境变量中,指明在什么位置寻找一众可执行文件。

    虚拟环境的工作结束之后,在命令行输入 deactivate,还原当前终端会话的PATH环境变量,把命令提示符重置为初始的状态。

  5. 使用pip安装python包

    pip install flask

    我们可以使用 pip freeze 查看安装了拿些包

flask应用的基本结构

  1. 初始化

    所有flask应用都必须创建一个 应用实例 。应用实例是Flask类的对象:

    from flask import Flask
    app = Flask(__name__)
    

    flask类的构造函数只有一个是必须指定的参数,也就是应用主模块或包的名称 。在大多数应用中,python的__name__ 变量就是所需要的值。flask用这个参数确定应用的位置,进而找到应用中其他文件的位置。

  2. 路由和视图函数

    处理URL和函数之间关系的程序就是 路由

    在flask中,使用应用实例提供的app.route()装饰器定义路由。

    eg:

    app.route('/')
    def index():
        return "hello world"
    

    把index函数注册为应用根地址。

    使用装饰器是定义路由的首选方式。

    index这样处理入站请求的函数称之为视图函数

    Flask 支持在路由中使用 string、int、float、path类型,path类型是一个特殊的字符串,可以包含正斜线。

  3. 一个完整应用

    from flask import Flask
    ​
    app = Flask(__name__)
    ​
    @app.route('/')
    def index():
        return 'hello world'
    
  4. web开发服务器

    flask自带web开发服务器。通过flask run命令启动。

    Linux下:

    export FLASK_APP=app.py

    flask run

    windows下:

    set FLASK_APP=app.py

    flask run

    image.png