Flask简介

作者: 懵懂_傻孩纸 | 来源:发表于2018-09-17 16:54 被阅读44次

Flask简介

Web应用程序的本质

Web(World Wide Web)诞生最初的目的,是为了利用互联网交流工作文档。


image.png

Web框架

  • 什么是Web框架?

    • 协助开发者快速开发 Web 应用程序的一套功能代码
    • 开发者只需要按照框架约定要求,在指定位置写上自己的业务逻辑代码
    • 例如:在某个区需要成立一家医院,有两种方式:
      • 1.圈地,打地基,盖楼,装修,入驻
      • 2.买楼,装修,入驻

  • 为什么要用Web框架?
    web网站发展至今,特别是服务器端,涉及到的知识、内容,非常广泛。这对程序员的要求会越来越高。如果采用成熟,稳健的框架,那么一些基础的工作,比如,安全性,数据流控制等都可以让框架来处理,那么程序开发人员可以把精力放在具体的业务逻辑上面。使用框架的优点:

    • 稳定性和可扩展性强
    • 可以降低开发难度,提高开发效率。
    • 总结一句话:避免重复造轮子

  • 在Python中常用到的框架有

    • Flask
    • Django
    • tornado

Flask

  • Flask诞生于2010年,是Armin ronacher(人名)用 Python 语言基于 Werkzeug 工具箱编写的轻量级Web开发框架。

  • Flask 本身相当于一个内核,其他几乎所有的功能都要用到扩展(邮件扩展Flask-Mail,用户认证Flask-Login,数据库Flask-SQLAlchemy),都需要用第三方的扩展来实现。比如可以用 Flask 扩展加入ORM、窗体验证工具,文件上传、身份验证等。Flask 没有默认使用的数据库,你可以选择 MySQL,也可以用 NoSQL。

  • 其 WSGI 工具箱采用 Werkzeug(路由模块),模板引擎则使用 Jinja2。这两个也是 Flask 框架的核心。

  • Flask常用扩展包:

    • Flask-SQLalchemy:操作数据库;
    • Flask-script:插入脚本;
    • Flask-migrate:管理迁移数据库;
    • Flask-Session:Session存储方式指定;
    • Flask-WTF:表单;
    • Flask-Mail:邮件;
    • Flask-Bable:提供国际化和本地化支持,翻译;
    • Flask-Login:认证用户状态;
    • Flask-OpenID:认证;
    • Flask-RESTful:开发REST API的工具;
    • Flask-Bootstrap:集成前端Twitter Bootstrap框架;
    • Flask-Moment:本地化日期和时间;
    • Flask-Admin:简单而可扩展的管理接口的框架
    • 扩展列表:http://flask.pocoo.org/extensions/
  • 中文文档(http://docs.jinkan.org/docs/flask/

  • 英文文档(http://flask.pocoo.org/docs/0.11/

虚拟机环境

为什么需要搭建虚拟机

  • 在开发过程中, 当需要使用python的某些工具包/框架时需要联网安装
    sudo pip install flask==0.10.1
  • 提示:使用如上命令, 会将flask-0.10.1安装到/usr/local/lib/python2.7/dist-packages路径下
  • 问题:如果在一台电脑上, 想开发多个不同的项目, 需要用到同一个包的不同版本, 如果使用上面的命令, 在同一个目录下安装或者更新, 新版本会覆盖以前的版本, 其它的项目就无法运行了.
  • 解决方案 : 虚拟环境
    • 作用 : 虚拟环境可以搭建独立的python运行环境, 使得单个项目的运行环境与其它项目互不影响.
    • 所有的虚拟环境都位于/home/下的隐藏目录.virtualenvs下 - 比如联网安装Flask框架flask-0.10.1版本

如何搭建虚拟机环境

  • 安装虚拟机环境命令
sudo pip install virtualenv
sudo pip install virtualenvwrapper

安装完虚拟环境后,如果提示找不到mkvirtualenv命令,须配置环境变量:

# 1、创建目录用来存放虚拟环境
mkdir $HOME/.virtualenvs

# 2、打开~/.bashrc文件,并添加如下:
export WORKON_HOME=$HOME/.virtualenvs
source /usr/local/bin/virtualenvwrapper.sh

# 3、运行
source ~/.bashrc
  • 创建虚拟环境的命令 :

    • 提示:如果不指定python版本,默认安装的是python2的虚拟环境
# 在python2中,创建虚拟环境
mkvirtualenv 虚拟环境名称
例 :
mkvirtualenv py_flask


#在python3中,创建虚拟环境
mkvirtualenv -p python3 虚拟环境名称
例 :
mkvirtualenv -p python3 py3_flask
  • 提示 :

    • 创建虚拟环境需要联网
    • 创建成功后, 会自动工作在这个虚拟环境上
    • 工作在虚拟环境上, 提示符最前面会出现 “虚拟环境名称”

如何使用虚拟机环境

  • 查看虚拟机环境命令
    workon 两次tab键
  • 使用虚拟机环境命令
workon 虚拟环境名称

例 :使用python2的虚拟环境
workon py_flask

例 :使用python3的虚拟环境
workon py3_flask
  • 退出虚拟机环境命令
    deactivate
  • 删除虚拟机环境命令
rmvirtualenv 虚拟环境名称

例 :删除虚拟环境py3_flask

先退出:deactivate
再删除:rmvirtualenv py3_flask

如何在虚拟环境中安装工具包

  • 提示 : 工具包安装的位置 :

    • python2版本下:
      • ~/.virtualenvs/py_flask/lib/python2.7/site-packages/
    • python3版本下:
      • ~/.virtualenvs/py3_flask/lib/python3.5/site-packages
  • python3版本下安装flask-0.10.1的包 :

pip install 包名称

例 : 安装flask-0.10.1的包
pip install flask==0.10.1
  • 查看虚拟环境中安装的包
    pip freeze

相关文章

  • Flask安装,快速应用,配置文件

    目录 0.Flask简介 安装 werkzeug简介 flask快速使用 配置文件 0.Flask简介 Flask...

  • Flask 基本流程

    Flask 基本流程 一、Flask简介 Flask是一个基于Python实现的web开发'微'框架。 Flask...

  • Flask源码分析04:上下文Context

    Flask源码分析专题目录: Flask源码分析01:框架简介 Flask源码分析02:启动流程 Flask源码分...

  • Flask源码分析01:框架简介

    Flask源码分析专题目录: Flask源码分析01:框架简介 Flask源码分析02:启动流程 Flask源码分...

  • Flask源码分析05:请求

    Flask源码分析专题目录: Flask源码分析01:框架简介 Flask源码分析02:启动流程 Flask源码分...

  • Flask源码分析06:响应

    Flask源码分析专题目录: Flask源码分析01:框架简介 Flask源码分析02:启动流程 Flask源码分...

  • Flask源码分析03:路由原理

    Flask源码分析专题目录: Flask源码分析01:框架简介 Flask源码分析02:启动流程 Flask源码分...

  • Flask源码分析02:启动流程

    Flask源码分析专题目录: Flask源码分析01:框架简介 Flask源码分析02:启动流程 Flask源码分...

  • flask-session组件

    简介 flask-session是flask框架的session组件,由于原来flask内置session使用签名...

  • flask简介

    1.Flask介绍 Flask是一个基于Python实现的web开发的'微'框架 中文文档地址 Flask和Dja...

网友评论

    本文标题:Flask简介

    本文链接:https://www.haomeiwen.com/subject/ixsrnftx.html