初识Flask框架
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的环境搭建:
1. 创建虚拟环境
mkvirtualenv flask -p python3
2. 安装flask框架
pip install flask
编写第一个Flask程序:
1. 创建一个python文件,且名字不能为flask和关键字
2. 编写程序
# 1. 导包
from flask import Flask # 2. 创建Flask对象
# __name__:表示导包名字为当前文件名
app = Flask(__name__) # 3. 编写试图函数并设置路由
@app.route('/')
def index():
return 'index' # 运行flask程序
if __name__ == '__main__':
# host:IP
# port:端口
# bebug:True开启,False关闭
app.run()
Flask导入配置信息:
1. 使用配置文件
1. 创建配置文件config.ini,并编写配置
# 配置文件中的配置选项必须大写
DEBUG = True
2. 导入配置文件
# 1. 导包
from flask import Flask # 2. 创建Flask对象
# __name__:表示导包名字为当前文件名
app = Flask(__name__) # 导入配置文件
app.config.from_pyfile('config.ini') # 3. 编写试图函数并设置路由
@app.route('/')
def index():
return 'index' # 运行flask程序
if __name__ == '__main__':
# host:IP
# port:端口
# bebug:True开启,False关闭
app.run()
2. 使用配置类
1. 编写配置信息类
class Config(object):
'''配置类中的配置信息必须大写'''
DEBUG = True
2. 导入配置类
# 1. 导包
from flask import Flask # 2. 创建Flask对象
# __name__:表示导包名字为当前文件名
app = Flask(__name__) class Config(object):
'''配置类中的配置信息必须大写'''
DEBUG = True # 导入配置类
app.config.from_object(Config) # 3. 编写试图函数并设置路由
@app.route('/')
def index():
return 'index' # 运行flask程序
if __name__ == '__main__':
# host:IP
# port:端口
# bebug:True开启,False关闭
app.run()
3. 使用环境变量
1. 设置环境变量

2. 导入环境变量
# 1. 导包
from flask import Flask # 2. 创建Flask对象
# __name__:表示导包名字为当前文件名
app = Flask(__name__) # 导入环境变量
app.config.from_envvar('DEV') # 3. 编写试图函数并设置路由
@app.route('/')
def index():
return 'index' # 运行flask程序
if __name__ == '__main__':
# host:IP
# port:端口
# bebug:True开启,False关闭
app.run()
Flask启动方式
1. 服务器启动方式
直接在程序中编写app.run()方法然后运行即可。
2. 命令行启动方式
设置环境变量:
export FLASK_APP=文件名
启动命令:
flask run
可以添加选项参数
-p port
-h host
-- help
初识Flask框架的更多相关文章
- 初识Flask框架,以及Flask中的模板语言jinjia2和Flask内置的Session
		
一.web框架的对比 首先我们先来看下比较火的web框架 1.Django: 优点:大而全,所有组件都是组织内部开发高度定制化,教科书级别的框架 缺点:大到浪费资源,请求的时候需要的资源较高 2.Fl ...
 - Flask(1)- 主流web框架、初识flask
		
一.Python 现阶段三大主流Web框架 Django.Tornado.Flask 对比 Django 主要特点是大而全,集成了很多组件(例如Models.Admin.Form等等), 不管你用得到 ...
 - flask框架(一)——初识Flask
		
一.初识flask 1.什么是Flask:Flask是一个python编写的web框架,只是一个内核,默认依赖2个外部库:jinja2模板引擎和WSGI工具集--Werkzeug. 2.安装flask ...
 - Flask 框架
		
装饰器知识回顾 http://www.cnblogs.com/0bug/p/7978595.html 普通装饰器格式: def wrapper(func): def inner(*args, **kw ...
 - Flask框架 之 基本使用
		
初识Flask Flask是一个基于Python开发并且依赖jinja2模板和Werkzeug WSGI服务的一个微型框架,对于Werkzeug本质是Socket服务端,其用于接收http请求并对请求 ...
 - flask框架-上
		
flask简介 Flask是一个使用 Python 编写的轻量级 Web 应用框架.其 WSGI 工具箱采用 Werkzeug ,模板引擎则使用 Jinja2 .Flask使用 BSD 授权. Fla ...
 - 初识Flask、快速启动
		
目录 一.初识Flask 1.1 什么是flask? 1.2 为什么要有flask? 二.Flask快速启动 一.初识Flask 1.1 什么是flask? Flask 本是作者 Armin Rona ...
 - Flask 框架入门
		
Flask Flask是一个使用 Python 编写的轻量级 Web 应用框架.其 WSGI 工具箱采用 Werkzeug ,模板引擎则使用 Jinja2 . 安装 Flask 依赖两个外部库, We ...
 - Flask框架获取用户IP地址的方法
		
本文实例讲述了python使用Flask框架获取用户IP地址的方法.分享给大家供大家参考.具体如下: 下面的代码包含了html页面和python代码,非常详细,如果你正使用Flask,也可以学习一下最 ...
 
随机推荐
- Django与AJAX-choice字段-MTV和MVC模型-sweetalert搭建页面
			
Django中的choice字段 应用的场景: 用户信息举列:如用户性别.婚否.学历.工作状态等可以列举出来供选择的信息 书写models创建表模型: 数据的获取和查询: 总结: "&quo ...
 - Git  log  中文乱码
			
以下三条命令搞定(系统是centos 7.4) git config --global i18n.commitencoding utf-8 git config --global i18n.logo ...
 - SAP 配置表根据输入的值带出描述
			
在SAP客制功能需求中,为了程式的灵活配置采用配置表的形成,使后期使用中不需要更改源代码实现功能的增加.在配置表的使用过程中,有时候会有这样的需求:在配置中输入或选择了编码,根据编码带出描述.以下详细 ...
 - 2018-1 WebStorm最新版本破解激活方法
			
在激活页面选择License Server,输入:http://idea.codebeta.cn,点击Activate即可激活. 如果失效用这个: http://idea.ibdyr.com
 - python语法基础-文件操作-长期维护
			
############### python-简单的文件操作 ############### # python中文件的操作 # 文件操作的基本套路 # 1,打开文件,默认是是只读方式打开文件 ...
 - addEventListener和onclick的区别
			
onclick只出现一次alert:我是click2[很正常第一次click事件会被第二次所覆盖],但是addEventListener却可以先后运行,不会被覆盖[正如:它允许给一个事件注册多个监听器 ...
 - linux 上安装 keepalive
			
1.keepalive 单机安装 1.1 安装环境 yum -y install kernel-devel* openssl-* popt-devel lrzsz openssh-clients li ...
 - java中的赋值
			
java中的赋值使用符号“=”. 按照java编程思想的解释:它的意思是“取等号右边的值,把它复制给左边”. 当然左边必须是一个明确的,已命名的变量. 基本类型: int a=2; int b=3; ...
 - 国内外主流的三维GIS软件
			
我国GIS经过三十多年的发展,理论和技术日趋成熟,在传统二维GIS已不能满足应用需求的情况下,三维GIS应运而生,并成为GIS的重要发展方向之一.上世纪八十年代末以来,空间信息三维可视化技术成为业界研 ...
 - AttributeError: 'bytes' object has no attribute 'hex'
			
python3.5之前bytes数据没有hex()属性 需要使用 ''.join(map(lambda x:('' if len(hex(x))>=4 else '/x0')+hex(x)[2: ...