我正在处理一个Flask项目,我希望在滚动时让索引加载更多内容.我想设置一个全局变量来保存页面加载的次数.我的项目结构如下:
???run.py
???app
???templates
???_init_.py
???views.py
???models.py
Run Code Online (Sandbox Code Playgroud)
首先,我将全局变量声明为_init_.py:
global index_add_counter
Run Code Online (Sandbox Code Playgroud)
和Pycharm警告说 Global variable 'index_add_counter' is undefined at the module level
在views.py:
from app import app,db,index_add_counter
Run Code Online (Sandbox Code Playgroud)
而且有 ImportError: cannot import name index_add_counter
我还引用了global-variable-and-python-flask 但是我没有main()函数.在Flask中设置全局变量的正确方法是什么?
Sal*_*lva 22
附:
global index_add_counter
Run Code Online (Sandbox Code Playgroud)
你没有定义,只是声明这就像说在index_add_counter其他地方有一个全局变量,而不是 创建一个全局调用index_add_counter.由于您的名称不存在,Python告诉您它无法导入该名称.因此,您只需删除global关键字并初始化您的变量:
index_add_counter = 0
Run Code Online (Sandbox Code Playgroud)
现在你可以用以下方法导入它:
from app import index_add_counter
Run Code Online (Sandbox Code Playgroud)
那个工程:
global index_add_counter
Run Code Online (Sandbox Code Playgroud)
在模块的定义中使用,以强制解释器在模块的范围内查找该名称,而不是在定义中:
index_add_counter = 0
def test():
global index_add_counter # means: in this scope, use the global name
print(index_add_counter)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
70123 次 |
| 最近记录: |