本篇文章为大家展示了python中瓶框架有什么用,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
一、瓶蓝图目录
我们之前写的瓶项目都是自己组织的目录结构,其实瓶官方有其推荐的目录结构,以下就是一个符合官方推荐的瓶小型应用的项目结构目录示例,如下:
得到flask import 瓶 得到.views.acc import  acc_bp 得到.views.user import  user_bp def create_app (): ,,,my_app =,瓶(__name__) ,,,my_app.register_blueprint (acc_bp) ,,,my_app.register_blueprint (user_bp) ,,,return my_app app/__init__ . py
<代码> __init__ . py> 代码就是构建的应用程序的一个函数,并且将视图中的蓝图注册进去了。
接下来看静态目录,这个目录从字面意思就可以理解了,是我们的静态静态文件存放目录。
然后就是模板目录,即模板存放目录。
视图目录,主角终于登场了,这里存放的就是视图函数文件,也就是我们<代码>蓝图> 代码,每一个文件就是一个蓝图,如下:
<代码>/acc的看法。py 代码>
得到flask import 蓝图 时间=acc_bp 蓝图(& # 39;acc # 39;,, __name__) @acc_bp.route (“/acc") def accfunc (): ,,,return “my_app.acc" 视图/acc.py
<代码>视图/用户。py 代码>
得到flask import 蓝图 时间=user_bp 蓝图(& # 39;用户# 39;,,__name__) @user_bp.route (“/login") def 用户_ (): ,,,return “my_app.user" 视图/user.py
接下来就是关键性的一个文件manager.py,项目的启动文件,内容如下:
<代码>经理。py 代码>
得到app import create_app 时间=my_app create_app () if __name__ ==, & # 39; __main__ # 39;: ,,,my_app.run () 经理。py
二,Flask-SQLAlchemy
1,安装
pip install Flask-SQLAlchemy
2,接下来基于上面的瓶项目,我们要加入Flask-SQLAlchemy让项目变得生动起来
2.1加入Flask-SQLAlchemy第三方组件
<代码> app/__init__。py 代码>
得到flask import 瓶 得到flask_sqlalchemy import  SQLAlchemy ,,, #,导入Flask-SQLAlchemy中的SQLAlchemy 时间=db SQLAlchemy(),,, #,实例化SQLAlchemy #,注意:实例化SQLAlchemy的代码必须要在引入蓝图之前 #,引入蓝图 得到.views.acc import  acc_bp 得到.views.user import  user_bp def create_app (): ,,,my_app =,瓶(__name__) ,,,#,初始化应用配置,专门针对SQLAlchemy 进行配置 ,,,my_app.config [“SQLALCHEMY_DATABASE_URI"],=,“mysql + pymysql://根:@127.0.0.1:3306/你? charset=utf8" ,,,my_app.config [“SQLALCHEMY_POOL_SIZE"],=, 5,,,, #, SQLAlchemy的连接池大小 ,,,my_app.config [“SQLALCHEMY_POOL_TIMEOUT"],=, 15,,, #, SQLAlchemy的连接超时时间 ,,,my_app.config [“SQLALCHEMY_TRACK_MODIFICATIONS"],=,假的 ,,,db.init_app (my_app),, #,初始化SQLAlchemy ,,本质就是将以上的配置读取出来 ,,,my_app.register_blueprint (acc_bp) ,,,my_app.register_blueprint (user_bp) ,,,return my_app app/__init__ . py
2.2在应用目录下建立models.py (ORM模型文件)
应用程序/模型。py
得到app import db #,得到sqlalchemy.ext.declarative import  declarative_base=#,Base declarative_base () #,之前我们在创建数据表的时候都要做这样一件事,然而Flask-SQLAlchemy已经为我们把,Base 封装好了,即db.Model #,建立用户数据表 class 用户(db.Model): ,,,__tablename__ =, & # 39;用户# 39; ,,,#,__table_args__ =, {“useexisting":真正的} ,,,#,Flask-SQLAlchemy 也为我们封装好了列,整数、字符串等 ,,,id =, db.Column (db.Integer, primary_key=True) ,,,name =, db.Column (db.String (32) ,,,password =, db.Column (db.String (32) if __name__ ==, & # 39; __main__ # 39;: ,才能得到app import create_app ,,,my_app =, create_app () ,,,#,这里你要回顾一下瓶应用上下文管理了 ,,,#,离线脚本: ,,,with my_app.app_context (): ,,,,,,,db.drop_all(),,,,,,,, #,删除所有表 ,,,,,,,db.create_all(),,,,,, #,创建表 null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null nullpython中瓶框架有什么用