1.一个简单的例子
在工程里面新建一个Python文件命名为manage.py
(1)安装flask_script包,然后引入
from flask_script import Manager
from main import app
manager = Manager(app)
@manager.command
def runserver():
print '服务器跑起来了!!!'
if __name__ == '__main__':
manager.run()
在命令行里面输入:
python manage.py runserver
2.Flask-Script的manage分为主manage文件和分manage文件
主manage文件
manage.py:
from flask_script import Manager
from main import app
from db_manage import DBManager
manager = Manager(app)
@manager.command
def runserver():
print '服务器跑起来了!!!'
# 引入其他分manage的命令
manager.add_command('db',DBManager) # 这里的‘db’在命令行操作时,是有用的
if __name__ == '__main__':
manager.run()
分manage文件(数据库manage或其他分类)
db_manage.py
from flask_script import Manager
DBManager = Manager()
@DBManager.command
def init():
print '数据库初始化完成'
@DBManager.command
def migrate():
print '数据表迁移成功'
在命令行下:
(1)初始化文件
python manage.py db init
(2)生成迁移文件
python manage.py db migrate
(3)扩展:将迁移文件映射到数据库
python manage.py db upgrade----映射到数据库
若是第一次生成则需要按顺序执行上述(1)-(2)-(3)步骤
若只是增加字段,只需在model中添加字段然后按顺序执行上述的(2)--(3)命令即可更新数据库的字段。
还有注意要需要将model映射到数据库,需要把具体的类引入到manage.py中,然后才执行命令。例如需要将User映射到数据库,代码如下:
from models import User
然后执行上述的(1)-(2)-(3)命令。