问题:
一个常量路径需要在大于两个文件中共用,在每次从本地切换到部署服务器时都需要在两个文件更改,为此定义全局变量保存常量路径,在从本地切换服务i器部署时只更改一次即可。如下的解决方式:
""" app.py"""
import flask
from flask import Flask
import Test
app = Flask("my application")
app.config['A'] = test1
""" Test.py"""
from myapp import app
# 获取上下文内容
with app.app_context():
# 获取全局变量
temp= app.config['A']
在本地可运行成功,但是在服务器端(开启多线程)运行失败报错:
ImportError: cannot import name 'app' from partially initialized module 'app' (most likely due to a circular import) (/root/test/app.py)

本文介绍了在Flask项目中遇到的全局变量跨多个文件使用的问题,特别是在本地与服务器环境切换时的困扰。文章详细阐述了由于模块导入导致的错误:`ImportError: cannot import name 'app' from partially initialized module 'app'`,并提出了解决方案,即在单独的test.py文件中定义全局变量Gvar,然后在app.py中通过导入test模块来访问这个全局变量,从而避免循环导入的问题。
订阅专栏 解锁全文
2218

被折叠的 条评论
为什么被折叠?



