我正在尝试使用Django会话来读取和设置我的cookie,但是当我执行以下操作时,该程序只是没有响应!
sessionID = request.session [“userid”]
该计划没有通过这一点!
有什么想法吗?
答案 0 :(得分:4)
首先,Django已经为您创建了一个用户对象,因此您无需将其存储在会话中。只需访问它:
request.user
例如,要获取您将使用的用户名:
request.user.username
接下来,如果您想在会话中存储信息,则无需在cookie级别担心。只需将键/值对写入request.session
字典。
编辑:程序没有响应的原因是因为引发了KeyError异常。 'userid'不存在作为会话字典中的键(除非您自己添加了它)。
这就是为什么编写这样的字典读取更好的原因:
id = request.session.get('somekey', False)
如果词典中不存在“somekey”,则返回False。