我的Flask application.py变得有点大,我想将内容(类/函数)扩展到几个额外的py文件中。我将类定义放在appClasses.py中,application.py使用
from appClasses import *
我将一些函数定义放入appFunction.py中,并使用
from appFunction import *
appFunction.py中的函数使用flask会话变量。当相同的函数在application.py中时,会话变量引用没有问题(并且应用程序的行为符合预期),但当我剪切/粘贴到appFunction.py和导入函数时,当调用使用会话变量的第一个函数时,我会收到一个名称错误异常:
NameError: name 'session' is not defined
下面是一个示例函数:
def load_hgw_dict():
print("LOAD HGW DICT: called")
if 'hgw_dict_loaded' in session:
print("LOAD HGW DICT: hgw dict is available")
hgw_dict=session['hgw_dict']
else:
print("LOAD HGW DICT: hgw dict not available...adding")
session['hgw_dict_loaded']=True
list_of_hgws="/home/stbweb/LIST_OF_HENBGW"
hgw_file = open(list_of_hgws, "r")
hgw_dict=dict()
for line in hgw_file:
hgw_common, hgw_ip, hgw_hostname = line.split()
hgw_dict[hgw_common]= { 'ip':hgw_ip, 'hostname':hgw_hostname }
hgw_file.close()
print("LOAD HGW DICT: hgw dict =", hgw_dict)
return hgw_dict
会话是在运行flask application.py时由flask本身创建的。 这是项目目录结构…为了紧凑起见,删除了一些文件
.
|-- appClasses.py
|-- appHeNBGW.py
|-- application.ini
|-- application.py
|-- application.pyc
|-- cert.pem
|-- flask_session
| -- 2029240f6d1128be89ddc32729463129
|-- __init.py__
|-- key.pem
|-- __pycache__
|<snip>
|-- README.md
|-- set_dev_env
|-- static |<snip>
|-- templates
| <snip>
-- wsgi.py
目前没有回答
相关问题 更多 >
编程相关推荐