Session web2py在会话中插入值
我的会话有问题 用户从下拉菜单中选择smth后,我必须将该值插入会话。 我需要该值来访问模型中auth表的数据库,如果我从request.var读取,当我转到login/register表单时,它会崩溃。我在会话中的何处插入值以及如何查看、控制 现在我用cookies解决了这个问题,但它并不是最安全的 有什么建议吗=Session web2py在会话中插入值,session,web2py,Session,Web2py,我的会话有问题 用户从下拉菜单中选择smth后,我必须将该值插入会话。 我需要该值来访问模型中auth表的数据库,如果我从request.var读取,当我转到login/register表单时,它会崩溃。我在会话中的何处插入值以及如何查看、控制 现在我用cookies解决了这个问题,但它并不是最安全的 有什么建议吗= 谢谢会话是存储类的另一个实例。存储到会话中的内容,例如: session.myvariable = "hello" 可在以后检索: a = session.myvariable
谢谢会话是存储类的另一个实例。存储到会话中的内容,例如:
session.myvariable = "hello"
可在以后检索:
a = session.myvariable
换句话说,它已经存在了——只需给它分配变量即可。。
如果希望使用数据库,则必须在DB-through模型中定义一个会话表。
引用web2py手册:
例如,要在数据库中存储会话:
session.connect(request, response, db, masterapp=None)
其中db是DAL返回的开放数据库连接的名称。它告诉web2py您希望将会话存储在数据库中,而不是存储在文件系统中。session.connect必须位于db=DAL…之后,但必须位于需要会话的任何其他逻辑之前,例如,设置身份验证
web2py创建一个表:
db.define_table('web2py_session',
Field('locked', 'boolean', default=False),
Field('client_ip'),
Field('created_datetime', 'datetime', default=now),
Field('modified_datetime', 'datetime'),
Field('unique_key'),
Field('session_data', 'text'))
并将cPickled会话存储在session_数据字段中
默认情况下,选项masterapp=None会告诉web2py尝试在正在运行的应用程序中检索名为request.application的应用程序的现有会话
如果希望两个或多个应用程序共享会话,请将masterapp设置为主应用程序的名称
会话是存储类的另一个实例。存储到会话中的内容,例如:
session.myvariable = "hello"
可在以后检索:
a = session.myvariable
换句话说,它已经存在了——只需给它分配变量即可。。
如果希望使用数据库,则必须在DB-through模型中定义一个会话表。
引用web2py手册:
例如,要在数据库中存储会话:
session.connect(request, response, db, masterapp=None)
其中db是DAL返回的开放数据库连接的名称。它告诉web2py您希望将会话存储在数据库中,而不是存储在文件系统中。session.connect必须位于db=DAL…之后,但必须位于需要会话的任何其他逻辑之前,例如,设置身份验证
web2py创建一个表:
db.define_table('web2py_session',
Field('locked', 'boolean', default=False),
Field('client_ip'),
Field('created_datetime', 'datetime', default=now),
Field('modified_datetime', 'datetime'),
Field('unique_key'),
Field('session_data', 'text'))
并将cPickled会话存储在session_数据字段中
默认情况下,选项masterapp=None会告诉web2py尝试在正在运行的应用程序中检索名为request.application的应用程序的现有会话
如果希望两个或多个应用程序共享会话,请将masterapp设置为主应用程序的名称