flask-script的功能:
1.增加了一个 runserver的命令,可以自定制 域名 和 端口
python manage.py runserver -h 127.0.0.1 -p 8001
2.可以自定义命令,是位置 传参数。
@manager.command
def create_table(arg):
'''
自定义的命令
:param arg:
:return:
'''
print(arg)
知识兔 调用的命令:
python manage.py create_table 1
3.自定义命令,是关键字 传参数。
@manager.option('-n','--name',dest='name')
@manager.option('-u','--url',dest='url')
def cmd(name,url):
print(name,url)
知识兔 调用的命令:
python manage.py cmd -n 1 -u 2
from crm import create_app
from flask_script import Manager
app = create_app()
manager = Manager(app)
@manager.command
def create_table(arg):
'''
自定义的命令
:param arg:
:return:
'''
# from crm import db, create_app
#
# app = create_app()
# app_ctx = app.app_context()
#
# with app_ctx:
# # with 对象 的时候就会自动的触发类的__enter__ 方法,然后执行下面的代码,最后执行__exit__
#
# # __enter__是将app_ctx通过;LocalStack放入Local中,
#
# db.create_all() # 会调用LocalStack 从Local中获取app,然后再从app中获取配置。
print(arg)
# __exit__ 是将当前的app_ctx对象从Local中移除掉
@manager.option('-n','--name',dest='name')
@manager.option('-u','--url',dest='url')
def cmd(name,url):
print(name,url)
if __name__ == "__main__":
# app.run()
manager.run()
知识兔