python
runtime_error
ai_generated
true
RuntimeError: 在应用上下文之外工作。 这通常意味着你尝试使用了需要当前应用的功能。
RuntimeError: Working outside of application context. This typically means that you attempted to use functionality that needed the current application.
ID: python/flask-cli-context-missing
80%修复率
89%置信度
0证据数
2024-02-08首次发现
版本兼容性
| 版本 | 状态 | 引入 | 弃用 | 备注 |
|---|---|---|---|---|
| 3.x | active | — | — | — |
根因分析
Flask CLI 命令或脚本访问 current_app/db 时未推入应用上下文;@app.cli.command 并非在所有情况下自动推入。
English
A Flask CLI command or script accesses current_app/db without pushing an app context; @app.cli.command does not push one automatically in all cases.
解决方案
-
92% 成功率
Use @with_appcontext decorator on CLI commands
-
93% 成功率
with app.app_context(): db.create_all() in scripts
无效尝试
常见但无效的做法:
-
60% 失败
Breaks application factory pattern and multi-app tests.
-
65% 失败
Circular imports and stale config.