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()
结果: