1.请手写一个flask的hello world。
hello.py中
#coding = utf-8 # 第一步:导入Flask类 from flask import Flask app = Flask(__name__) @app.route("/") def helloworld(): return "<h1>hello world</h1>" if __name__ == " __main__": app.run(debug=True)
2.Flask框架的优势及适用场景?
优势:
1.轻量;(Micro Framework)
2.简洁
3.扩展性好*
4 第三方库的选择面广,开发时可以结合自己喜欢用的轮子,也可以结合强大的python库
5.核心(werzeug和jinja2),jinja2就是指模板引擎。
应用场景:
适用于小型网站,适用于开发web服务的API;
开发大型网站也毫无压力,但是代码架构需要开发者自己设计;
Flask和Nosql数据库的结合优于django
3.Flask框架组件
flask_sqlalchemy:将Flask和SQLAlchemy很好的结合在一起,如django中的ORM操作
flask_script:用于生成命令,在项目根目录路径下使用命令;例如:python manage.py runserver
flask_migrate:用来实现数据库迁移(依赖flask_script)
flask-session:session放在redis里面
blinker:信号-触发信号
PS:# flask中的信号blinker 信号主要是让开发者可是在flask请求过程中定制一些行为。 或者说flask在列表里面预留了几个空列表,在里面存东西。 简言之,信号允许某个'发送者'通知'接收者'有事情发生了
4.Flask蓝图的作用
# blueprint把实现不同功能的module分开.也就是把一个大的App分割成各自实现不同功能的module.
# 在一个blueprint中可以调用另一个blueprint的视图函数, 但要加相应的blueprint名.
通常情况下,我是使用flask框架的项目组织结构是这样的:
我们看看视图方法:
#views.py from app import app @app.route('/user/index') def index(): return 'user_index' @app.route('/user/show') def show(): return 'user_show' @app.route('/user/add') def add(): return 'user_add' @app.route('/admin/index') def adminindex(): return 'admin_index' @app.ro