flask 引入flask_sqlalchemy

环境:

  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服务

  

 

posted @ 2021-01-03 18:42  Anec  阅读(152)  评论(0编辑  收藏  举报