为了方便起见,Django 提供一种方法来测试用户浏览器是否支持cookies。调用视图里 request.session
的 set_test_cookie()
方法,并且在后续视图里调用 test_cookie_worked()
—— 不是在同一个视图里调用。
由于 cookies 的工作方式, set_test_cookie()
和 test_cookie_worked()
之间尴尬的分割是有必要的。当你设置了一个 cookie,在浏览器的下一个请求之前,实际上你不能判断浏览器是否接受它。
使用 delete_test_cookie()
来清理是个好习惯。在验证测试的 cookie 可用之后来执行它。
这里是一个典型的用法示例:
from django.http import HttpResponse
from django.shortcuts import render
def login(request):
if request.method == "POST":
if request.session.test_cookie_worked():
request.session.delete_test_cookie()
return HttpResponse("You"re logged in.")
else:
return HttpResponse("Please enable cookies and try again.")
request.session.set_test_cookie()
return render(request, "foo/login_form.html")
可以通过继承 AbstractBaseSession 和 SessionStore类来创建基于Django中包含的自定义数据库支持的会话引擎(即 db ...
一旦你定义了你的模型,你需要告诉 Django 你准备 使用 这些模型。你需要修改设置文件中的 INSTALLED_APPS,在这个设置...
Java Swing教程 -Java Swing工具包我们可以使用java.awt.Toolkit与本机工具包系统进行通信。Toolkit类提供了一个静态getDefaultT...
MyBatis-Plus 条件构造器-AbstractWrapperin(R column, Collection? value)in(boolean condition, R column, Collection? value)...
基于 Java 的配置到目前为止,你已经看到如何使用 XML 配置文件来配置 Spring bean。如果你熟悉使用 XML 配置,那么我会说,不需...
sql:query 标签 sql:query标签用来运行SQL SELECT语句,还有就是将结果存储在作用域变量中。属性 sql:query标签有如下属性:...
fmt:setBundle 标签 fmt:setBundle标签用来载入一个资源束,然后将它存储在作用域中已命名的变量或bundle配置变量中。语法格式fm...
x:choose, x:when, x:otherwise 标签 x:choose标签与Java switch语句有相同的功能。switch语句有case语句,而x:choose标签有x:wh...
Swift教程 -Swift开关语句 switch 语句用于根据a的值执行代码 变量。例子var shape = 1switch shape {case 0:println("0")case 1...