ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

8.Flask-Script

2019-12-23 17:54:32  阅读:173  来源: 互联网

标签:__ Script Flask app db flask manager import


 Flask-script的作用是可以通过命令行的形式操作flask。安装方式:pip install flask-script

1.1.command装饰器

(1)创建manage.py

from flask_script import Manager

from flask_scripts_demo import app

manager = Manager(app)

@manager.command      #这个装饰器把函数变成在终端可以运行的命令
def greet():       
    print('你好')

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

(2)执行命令

在cmd终端运行

python manage.py greet

# “你好”

 

 1.2.option装饰器

manage.py

from flask_script import Manager

from flask_scripts_demo import app

manager = Manager(app)

@manager.command      #这个装饰器把函数变成在终端可以运行的命令
def greet():
    print('你好')

#如果函数需要传递参数就用option装饰器
@manager.option("-u","--username",dest="username")    #第一个参数是简称
@manager.option("-a","--age",dest="age")
def add_user(username,age):
    print("添加的用户名是:%s,年龄是:%s"%(username,age))


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

在cmd终端添加用户

python manage.py add_user -u derek -a 18


#添加的用户名是:derek,年龄是:18

 

1.3. 实例:模拟django通过命令添加超级管理员

flask-script_demo.py

from flask import Flask
from flask_sqlalchemy import SQLAlchemy
import config

app = Flask(__name__)
app.config.from_object(config)
db = SQLAlchemy(app)

class BackendUser(db.Model):
    __tablename__ = 'backend_user'
    id = db.Column(db.Integer,primary_key=True,autoincrement=True)
    username = db.Column(db.String(50),nullable=False)
    email = db.Column(db.String(50),nullable=False)

db.create_all()

@app.route('/')
def hello_world():
    return 'Hello World!'

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

manage.py

from flask_script import Manager

from flask_scripts_demo import app
from flask_scripts_demo import BackendUser,db

manager = Manager(app)

@manager.option("-u","--username",dest="username")    
@manager.option("-e","--email",dest="email")
def add_user(username,email):
    user = BackendUser(username=username,email=email)
    db.session.add(user)
    db.session.commit()


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

cmd终端添加用户到数据库

python manage.py add_user -u derek -e 111@qq.com

 

     

标签:__,Script,Flask,app,db,flask,manager,import
来源: https://www.cnblogs.com/gaidy/p/12085077.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有