之前在django中一直用session处理一些问题,这次想拿到sessionid数据,发现跟以前的想法不太一样:
django中的sessionid要通过下面这种方式取到:
session_key = request.session.session_key
而不能通过下面这样的方式:
request.session['session_key']
平时我们往session中添加的数据实际上保存在request.session._session这个字典中的。
request.session实际上就是一个字典,所以可以像访问字典一样访问session里面的数据,通过遍历session里面的数据,可以证明上面那个观点:
session_tmp = request.session
for key, value in session_tmp.items():
print key + ' : ' + str(value)
比方说下面往session里面添加一条记录:
request.session['username'] = 'admin'
实际上这条数据保存在request.session._session这个字典中,用的时候直接像下面这样用就行了:
request.session['username']
或者:
request.session.username
下面是引用的另外一篇介绍django中session用法的文章,讲的不错
转自:http://simple-is-better.com/news/499
Django session 详解-part II-session
Django中的session是一个高级工具,它可以让用户存储个人信息以便在下次访问网站中使用这些信息。session的基础还是cookie,但是它提供了一些更加高级的功能。请看下面的一个例子:
使用session:
这个例子中实现了一个简单的计数功能:
def test_count_session(request):
if 'count' in request.session:
request.session['count'] += 1
return HttpResponse('new count=%s' % reque