python-3.x - 烧瓶中的 current_app 应用程序上下文。获取烧瓶的工作实例
问题描述
我正在尝试设置简单的烧瓶应用程序来感知app_context()
功能。
这是我的代码:
# config.py
UPDATE_PERIOD = 100.0
# init.py
from flask import Flask
import config
app = Flask(__name__)
app.config.from_object(config)
app.config['DEBUG'] = True
@app.route('/')
def hello_world():
return 'Hello, World!'
if __name__ == "__main__":
app.run()
# ex.py
from flask import current_app
from flask import Flask
app = Flask(__name__)
with app.app_context() as app:
print(current_app.config['DEBUG'])
print(current_app.config['UPDATE_PERIOD'])
现在,我正在运行我的 init.py:
python3 init.py
* Serving Flask app "init" (lazy loading)
* Environment: production
WARNING: This is a development server. Do not use it in a production deployment.
Use a production WSGI server instead.
* Debug mode: on
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
* Restarting with stat
* Debugger is active!
* Debugger PIN: 666-659-182
没关系,应该如何。app.config['DEBUG'] = True
在这里,我期望app.config['UPDATE_PERIOD'] = 100.0
我正在尝试在ex.py
.
问题是:当我执行时:python3 ex.py
我期望这个:
True
100.0
但最终我得到了这个:
False
Traceback (most recent call last):
File "ex.py", line 10, in <module>
print(current_app.config['UPDATE_PERIOD'])
KeyError: 'UPDATE_PERIOD'
所以我无法了解 app_context() 功能是如何工作的,而我认为我正在做与docs中所写相同的事情。
有一个选项可以导入ex.py
:
from init import app
但我想在没有复杂导入的情况下获得工作实例,因为我的应用程序很大。
谁能帮我解决这个问题..?
先感谢您!
解决方案
推荐阅读
- hive - 如何在 SQL 中定义复杂的形状?
- android - 如何以调用另一个活动的方式使 ListView 中的每个项目可点击?
- c# - 获取UTC c#中对应的起始本地小时
- java - Custom GIS Routes
- c# - WPF - 是否可以将 DataGrid 导出为 PDF?
- java - how to print List of Objects inside Object in Thymleaf?
- php - Write query with subquery in CodeIgniter Query Builder?
- java - Splunk doesnt return all the results - using rest API -
- python - 按对象计算分组中子组中的行数
- mongodb - inMemoryDB 的 MongoDb 身份验证?