环境:
python 3.7.4
win10
模块:
flask
flask_sqlalchemy
flask_migrate
Migratelask_script
PS:通过脚本命令的方式在运行服务前,先创建数据库表,然后再运行
工程目录结构:
flask 引入flask_sqlalchemy
modules 中存放数据模型
在App __init__ 中创建 create_app 启动函数
from flask import Flask from App.Setting import DevConfig from App.loggingConfig import LoggingConfig from flask_sqlalchemy import SQLAlchemy # 初始化SQLAlchemy db = SQLAlchemy() def create_app(): # 初始化 flask app = Flask(__name__) # 导入配置文件 app.config.from_object(DevConfig) # SQLAlchemy引入app以及配置文件 db.init_app(app) # 初始化 Logging 日志模块 LoggingConfig() # 导入蓝图 from App.Login import login # 引入蓝图 app.register_blueprint(login) return app
在启动文件 manage 中 关联
from flask_migrate import MigrateCommand, Migrate from flask_script import Manager from App import create_app # 引入表结构 from App.modules import Users,db app = create_app() manager = Manager(app) # Migrate() 需要绑定app 和 db migrate = Migrate(app, db) # 子命令 MigrateCommand 包含三个方法 init migrate upgrade manager.add_command(‘db‘, MigrateCommand) if __name__ == ‘__main__‘: manager.run() ‘‘‘ 启动项目前创建数据库: python manager.py db init python manager.py db migrate python manager.py db upgrade 启动项目 python manager.py runserver ‘‘‘
通过脚本启动方式 先运行 db init ---》 db migrate ----》 runserver 启动web服务