如何在Django中设置和获取会话(Session)数据
在Django中,我们可以使用session框架来创建和管理会话数据。以下是如何设置和获取会话数据的详细步骤:
- 在 settings.py 文件中配置 session 相关参数。
# settings.py # session 存储引擎,这里使用 cache 存储 SESSION_ENGINE = "django.contrib.sessions.backends.cache" # session 存储器(缓存),选择缓存就需要指定相应配置 CACHES = { 'default': { 'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache', 'LOCATION': '127.0.0.1:11211', } } # session 的 cookie 名称 SESSION_COOKIE_NAME = 'sessionid' # session 过期时间(秒)(默认值 2 周) SESSION_COOKIE_AGE = 60 * 60 * 24 * 7 * 2
- 在 views.py 中设置会话数据。
# views.py from django.shortcuts import render def set_session(request): request.session['pidancode'] = '皮蛋编程' return render(request, 'index.html')
- 在 views.py 中获取会话数据。
# views.py from django.shortcuts import render def get_session(request): pidancode = request.session.get('pidancode') return render(request, 'index.html', {'pidancode': pidancode})
- 在模板中展示会话数据。
<!-- index.html --> <h1>{{ pidancode }}</h1>
在这个例子中,我们使用 Django 内置的 get 方法从会话数据中获取 pidancode 值,并将其呈现在模板中的 H1 HTML 标题中。
注意:在设置和获取会话数据时,我们使用的是类似字典的语法。当我们执行 request.session['pidancode'] = '皮蛋编程' 时,我们正在将值 '皮蛋编程' 分配给键 'pidancode'。通过执行 request.session.get('pidancode'),我们可以获取存储在 'pidancode' 键中的值。
相关文章