flask_script

flask_script

flask_script是一个生成shell命令的模块,为在Flask里面编写额外的脚本提供了支持。包括运行一个开发的服务器,一个自定义的命令行,用于初始化数据库,定时任务和其他属于web引用之外的命令行脚本。

flask_script 对数据库的简单操作

from flask_script import Shell,Manager
from models import app,db,User,Role
from flask_migrate import Migrate,MigrateCommand

#创建一个用来管理命令的对象,Manager用来跟踪所有命令,
manager = Manager(app)
migrate = Migrate(app,db)

# 添加一条数据库管理命令
manager.add_command('db',MigrateCommand)

# 可以显示所有用户
@manager.command
def showUser():
    users = User.query.all()
    print(users[:5])

@manager.command
def showRole():
    roles = Role.query.all()
    print(roles[:5])


@manager.option('-n','--name',help='添加角色')
def addRole(name):
    try:
        role = Role(name=name)
        db.session.add(role)
        db.session.commit()
    except Exception:
        print('创建角色失败')
    else:
        print('创建角色成功')

if __name__=="__main__":
    manager.run()

结果:
在这里插入图片描述

你可能感兴趣的:(flask_script)