1.Django中使用redirect重定向时,
会报一个错,
'set' object is not reversible
这是为什么呢?
多方查找才发现,是urls.py的问题,Django中urls.py中的路由默认是字典,
要把这个字典改为列表形式,而且全部应用下的urls.py里的路由也必须是列表形式方可
如上,把项目里的urls.py和全部应用里的urls.py文件里的路由项改为列表,redirect就可以正常使用了(原因未明)
2.另外,还有一个不改变文件,也可以正常重定向的方法,就是使用
HttpResponseRedirect
先导入
from django.http import HttpResponseRedirect
然后使用
logout(request): request.session.flush() HttpResponseRedirect()
这样也可以达到正常重定向的效果