Flask定制命令

使用 flask-script定制命令(老版本)

# flask 老版本中,没有命令运行项目,自定制命令

# flask-script 解决了这个问题:flask项目可以通过命令运行,可以定制命令

# 新版的flask--》官方支持定制命令  click 定制命令,这个模块就弃用了



# flask-migrate 老版本基于flask-script,新版本基于flask-click写的

### 使用步骤
	-1 pip3 install  Flask-Script==2.0.3
    -2 pip3 install flask==1.1.4
    -3 pip3 install markupsafe=1.1.1
	-4 使用
    from flask_script import Manager
    manager = Manager(app)
    if __name__ == '__main__':
    	manager.run()
    -5 自定制命令
    @manager.command
    def custom(arg):
        """自定义命令
        python manage.py custom 123
        """
        print(arg)
        
    - 6 执行自定制命令
    python manage.py custom 123

新版本定制命令

from flask import Flask
import click
app = Flask(__name__)


@app.cli.command("create-user")
@click.argument("name")
def create_user(name):
    # from pool import POOL
    # conn=POOL.connection()
    # cursor=conn.cursor()
    # cursor.excute('insert into user (username,password) values (%s,%s)',args=[name,'123456'])
    # conn.commit()
    print(name)


@app.route('/')
def index():
    return 'index'


if __name__ == '__main__':
    app.run()

# 运行项目的命令是:flask --app py文件名字:app run



# 命令行中执行
# flask --app 7-flask命令:app create-user xxx
# 简写成 前提条件是 app所在的py文件名字叫 app.py
# flask create-user xxx

扩展(django中自定制命令)

# 1 app下新建文件夹
	management/commands/
# 2 在该文件夹下新建py文件,随便命名(命令名)

# 3 在py文件中写代码
from django.core.management.base import BaseCommand
class Command(BaseCommand):
    help = '命令提示'
    def handle(self, *args, **kwargs):
		命令逻辑  
# 4 使用命令
python manage.py  py文件(命令名)
posted @ 2024-03-06 16:34  wellplayed  阅读(16)  评论(0编辑  收藏  举报