一、前言
本文是基于阅读Flask 1.0.2中文文档,记录自己的实践。主要内容时摘抄文档,仅作为个人的学习笔记。
二、什么时Flask
一个基于python实现的Web开发微框架。
两个依赖的关键外部库:Werkzeug和Jinja2
Werkzeug:是一个WSGI工具包,可以作为一个Web框架的底层库。(不是Web服务器,不是Web框架,只是一个工具包,封装了好多Web框架的东西,例如Request、Response等)。这个服务器只能用户自测。
Jinja2:一个模板引擎,用于实现界面与业务数据的分离。
三、开发环境搭建(基于Windows)
(1)安装virtualenv
虚拟环境:程序执行时的独立执行环境。(方便支持不同系统的项目)
virtualenv:一种虚拟环境管理工具。其主要作用是解决应用间多版本的冲突问题,例如有两个项目,都是基于python的,即你系统上装的python,但两者依赖的一些库存在差异(如库的版本不同),此时,若在同一计算机的全局环境下,就存在冲突的可能性。因此,每个项目可能需要相对独立的运行环境(即自己的一套库等),而virtualenv就可以实现对yu运行环境的隔离,使项目相互不影响。
(1)安装资源库命令支持(安装python时选择了python是支持单个用户还是所有用户,即系统)
easy_install:python自带的一个资源包安装管理工具。(默认在python的Scripts目录中,要支持cmd调用,需要设置系统环境变量,一般安装python时即可选中设置)
pip:是easy_install的改进版,需要额外安装 ,通过 easy_install pip即可安装pip。(若python支持系统,则需要管理员身份运行)
(2)安装virtualenv
执行 pip install virtualenv 命令(看情况,需要管理员身份)
(3)为项目创建虚拟环境
一个项目是否使用了virtualenv创建了虚拟环境,关键标志是该项目文件夹下是否有venv文件夹。
如何创建一个虚拟环境:
1、通过cd指令进入一个指定目录(可以是新建的 mkdi指令)
2、执行 virtualenv venv指令,看到一串字符串末尾有。。。。done的即创建成功。(这样创建的虚拟环境会携带系统已安装的扩展库)
3、virtualenv --no-site-packages venv (这样可以纯净的虚拟环境,不携带任何资源库)
(4)在指定项目的虚拟环境中工作
当你想在某个项目上工作时,只需激活该项目的虚拟环境,在项目文件夹下,执行如下命令:
venv\Scripts\activate 当你的命令行带有 venv字样(例:(venv)D:/XXXXX),即激活成功,证明你处于虚拟环境下。
(5)我们为该虚拟环境安装Flask框架
在激活的虚拟环境中,执行 pip install Flask 即可(装的可能不是Flask的最新版本,若要最新版本,可通过git clone最新开发版本,或者直接安装最新版)
通过pip install Flask==dev 返回Flask的版本列表信息,然后 pip install Flask==版本序号 安装对应版本的Flask即可,安装过程可能会出现下载超时错误,多试几次即可。
(6)已有远程项目,安装项目的所有依赖包
当我们克隆完一个项目后,并为该项目创建了一个虚拟环境,此时项目的依赖扩展包均未装,我们如何一次性安装项目里的扩展包呢?
执行如下指令:pip install -r requirements.txt requirements.txtwe文本文件中,罗列了依赖的扩展包(包名==版本号的形式)