Python app_上下文的Flask变量
每次使用自行编写的CLI命令时,都会调用app_上下文,从而连接额外的Blueprint以及在项目启动时调用的记录器。 是否有任何列表或变量可以从调用Python app_上下文的Flask变量,python,python-3.x,flask,Python,Python 3.x,Flask,每次使用自行编写的CLI命令时,都会调用app_上下文,从而连接额外的Blueprint以及在项目启动时调用的记录器。 是否有任何列表或变量可以从调用app\u context的位置写入。 \uuuu name\uuuuu在任何地方都是相同的,始终返回“app” project.py: from app import create_app, cli app = create_app() cli.register(app) db = SQLAlchemy() migrate = Migrate(
app\u context
的位置写入。
\uuuu name\uuuuu
在任何地方都是相同的,始终返回“app”
project.py
:
from app import create_app, cli
app = create_app()
cli.register(app)
db = SQLAlchemy()
migrate = Migrate()
def create_app(config_class=Config):
app = Flask(__name__)
app.config.from_object(config_class)
db.init_app(app)
migrate.init_app(app, db)
app.logger.setLevel(logging.INFO)
app.logger.info('Project startup')
return app
app/\uuuuu init\uuuuuuuuuuuuupy
:
from app import create_app, cli
app = create_app()
cli.register(app)
db = SQLAlchemy()
migrate = Migrate()
def create_app(config_class=Config):
app = Flask(__name__)
app.config.from_object(config_class)
db.init_app(app)
migrate.init_app(app, db)
app.logger.setLevel(logging.INFO)
app.logger.info('Project startup')
return app
app.logger.info(“项目启动”)
每次调用CLI命令时都会调用。
使用CLI命令时,可以为不调用此函数添加什么条件?如果要禁用
app.logger
日志,则无需设置日志级别。让我们检查一下:
app = Flask('')
# app logs are disabled. uncomment to see app logs.
# app.logger.setLevel(logging.INFO)
app.logger.info('Project startup')
因此,您可以使用附加参数配置日志级别
:
def create_app(config_class=Config, log_level=None):
app = Flask(__name__)
app.config.from_object(config_class)
if log_level:
app.logger.setLevel(logging.INFO)
另一个好方法是使用两种不同的配置(第一种-用于web应用
,第二种-用于CLI应用
)。在这种情况下,您可以自定义任何设置(包括日志级别
)