我一直在搞乱web2py。我使用会话变量为某些变量赋予全局范围。但是,我只能从这些变量中读取数据,而且我无法覆盖它们的当前值。这是我的代码:
session.ROWS= 10
def row_column():
print session.ROWS
session.ROWS = session.ROWS+1
print session.ROWS
我多次调用row_column的输出(我通过AJAX调用它):
10
11
10
11
有关如何写入会话变量的任何线索?我希望输出为:
10
11
11
12
12
13
依旧......
答案 0 :(得分:2)
每次调用row_columns
操作时,都会执行整个控制器。在控制器的顶层,你有:
session.ROWS = 10
因此,您要在每次请求时将session.ROWS
重置为10。如果你需要在某个地方初始化它,你可以改为:
if not session.ROWS:
session.ROWS = 10
答案 1 :(得分:0)
您在没有页面刷新的情况下重用相同的会话。我确定你可以了解会话的存储方式。打开文件或db记录并更改数据并保存。
这篇文章说明了如何做到这一点。 web2py insert value into session