使用flask-script与模型交互时为什么不需要app_context?

时间:2016-12-12 12:43:47

标签: python flask

我的烧瓶脚本代码如下,我阅读了文档appcontext

from flask_script import Manager
from app import app
from models import User
from ext import db

manager = Manager(app)
db.init_app(app)

@manager.option('-u','--username',dest='username')
@manager.option('-p','--password',dest='password')
def add_user(username,password):
    user = User(username=username, password=password)
    db.session.add(user)
    db.session.commit()
    print 'success'

为什么没有app_context.for成功:

@manager.option('-u','--username',dest='username')
@manager.option('-p','--password',dest='password')
def add_user(username,password):
    with app.app_context():
        user = User(username=username, password=password)
        db.session.add(user)
        db.session.commit()
        print 'success'

1 个答案:

答案 0 :(得分:0)

因为在应用程序中声明了flask-script,以维护应用程序上下文