登陆成功之后应该是跳转而不是渲染一个HTML文件
来源:6-3 用户登录-2
安生ing
2017-01-01
render(request, 'login.html')
如果按照视频中所说的那样登陆成功之后使用render渲染一个页面,那么当前的URL依旧是/login,只不过是post渲染的,所以这里应该改成HttpResponseRedirect的方式进行跳转
return HttpResponseRedirect('/')
不知道我的理解正确与否,还有一个问题就是,如果我跳转了,但是我并没有吧request重新写入到浏览器,这样是否会有什么问题呢?
login(request, user) # 把SESSION和COOKIE写入request return HttpResponseRedirect('/')
这里我有些疑惑,期望得到老师的回答。
写回答
2回答
-
如果你调用login函数成功了, request是会写入到response中的。 另外课程中最后确实应该调用HttpResponseRedirect返回方式的。 但是这个返回方式我是在第十一章中才讲解到的,你看到第十一章的时候就全都明白了。你现在能看到这个问题说明你体会挺快的,给个赞
122017-01-02 -
永不止息L
2018-04-15
谢谢你的发帖,我遇到了同样的问题,就是发现登陆成功后 ,如果是 http://127.0.0.1:8000/lgoin 刷新就会报错,http://127.0.0.1:8000 就没有问题,开始的时候不知道怎么办,看了你的提问之后,我用了老师源代码里的 return HttpResponseRedirect(reverse("index")) 就O 了。谢谢!
032018-07-06
相似问题