首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >8.Flask-Script

8.Flask-Script

作者头像
zhang_derek
发布2018-08-01 11:40:27
3540
发布2018-08-01 11:40:27
举报
文章被收录于专栏:有趣的django有趣的django

 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
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018-05-28 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.1.command装饰器
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档