我想在 web2py 控制器中使用全局变量,但正如我发现的那样,控制器会在每个请求中加载。所以我的全局变量在任何地方都可以访问,但只读。更改不会反映在会话/请求中。
是否可以在某处定义全局变量?我试图将全局对象放入控制器中,我也尝试将其放入 model/db.py。
我想在 web2py 控制器中使用全局变量,但正如我发现的那样,控制器会在每个请求中加载。所以我的全局变量在任何地方都可以访问,但只读。更改不会反映在会话/请求中。
是否可以在某处定义全局变量?我试图将全局对象放入控制器中,我也尝试将其放入 model/db.py。
尝试使用数据库。例如,您可以创建一个设置表:
db.define_table('settings,
Field('max_size', 'integer', default=10),
Field('summary', 'text', 'abc'),
...
)
# create an instance of settings table
settings = db(db.settings.id > 0).select().first()
if not settings:
settings = db.settings.insert()
然后通过以下方式访问它:
settings.max_size # get the value
settings.update_record(summary=new_summary) # set a value