Flask 快速入门

Flask是一个值得学习的Python框架,没有臃肿的包和限制死的使用方法,完全交给开发者最大的权限去选择自己习惯的,性能最佳的包和写法去完成一个简单的系统。

这个文集是基于书《Flask Web开发》一书的学习笔记。

搭建Flask的开发环境

我是使用Windows平台进行应用开发的,所以所有的知识点基于Win平台

  • 使用平台 Windows10
  • 使用Python版本为2.7(虚拟环境)

开始

1. 建立虚拟环境(这样可以让本机的Python环境不受到污染,更适用与调试和编程环境):

  • virtualenv 命令
    • Linux:apt-get install python-virtualenv
    • WIN(其实是通用的,使用easy_install安装):easy_install virtualenv
    • 初始化虚拟空间:virtualenv name(这里是虚拟空间名)
    • 开始使用虚拟Python环境下的进行进行开发:
    • Linux: soure venv/bin/activate
    • windows: venv\scripts\activate

2. 安装Flask

  • 使用命令pip install flask(恩~你之前要安装好pip)

    这里有可能会出现一个错误:error2:……………… 原因可能是版本问题,Flask需要的setuptools==21.2.1,而我的setuptools的版本是远高于这个版本的,所以会报错,将setuptools的版本下降至21.2.1再次安装Flask就可以完成。

先上干货知识,比较枯燥的概念,如果不想看概念的话可以直接翻看例程

1. Flask的上下文全局变量(程序上下文和请求上下文)

1. `current_app`  程序上下文  程序实例
2. `g`  程序上下文  处理请求时用作临时存储对象(请求会重设)
3. `request`  请求上下文  请求的对象,HTTP内容
4. `session`  请求上下文  用户会话

我的个人理解就是整个Flask的请求操作的传值或者是传参其实都是根据这些上下文进行记录和传输的。

2. 请求钩子(就是执行某一状态时出现的状态)

  • before_first_request:处理第一个请求之前
  • before_request:每次请求之前运行
  • after_request:每次请求之后
  • teardown_request:注册函数,在每次请求之后运行 与视图函数之Ian共享数据一般使用上下文全局变量g

3. (小技巧)可以使用Flask_Script支持命令行选项

  • 安装pip install flask-script
  • 既可以在此运行环境中运行维护任务或者是测试任务

4. HelloWorldHelloUser

HelloWorld.PNG

5. 显示效果

  • 访问路由为/: 20160724helloworldweb.PNG
  • 访问路由为user/la:

20160724helloworlduser.PNG

链接