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

flask系列五之flask_script-LMLPHP

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

flask系列五之flask_script-LMLPHP

(3)扩展:将迁移文件映射到数据库

python manage.py db upgrade----映射到数据库

若是第一次生成则需要按顺序执行上述(1)-(2)-(3)步骤

若只是增加字段,只需在model中添加字段然后按顺序执行上述的(2)--(3)命令即可更新数据库的字段。

还有注意要需要将model映射到数据库,需要把具体的类引入到manage.py中,然后才执行命令。例如需要将User映射到数据库,代码如下:

from models import User

然后执行上述的(1)-(2)-(3)命令。

05-18 12:16