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()

  

posted on 2019-10-19 11:40  小辉python  阅读(419)  评论(0编辑  收藏  举报