HttpResponseRedirect
- 当一个逻辑处理完成后,不需要向客户端呈现数据,而是转回到其它页面
- 如添加成功、修改成功、删除成功后显示数据列表,而数据的列表视图已经开发完成,此时不需要重新编写列表的代码,而是转到这个视图就可以
- 从一个视图转到另外一个视图,就称为重定向
- Django中提供了
HttpResponseRedirect
对象实现重定向功能- 这个类继承自
HttpResponse
,被定义在django.http
模块中 from django.shortcuts import render, redirect
from django.http import HttpResponse,JsonResponse,HttpResponseRedirect
- 返回的状态码为302
- 这个类继承自
重定向演练
需求:登陆成功后,重定向到另外一个地址、路由
配置URLconf
# 登陆成功后重定向 url(r'^login/$', views.login),
视图
# 登陆 def login(request): # 假装在处理登陆逻辑,并登陆成功 return redirect('http://www.itcast.cn')
提示:
redirect
和HttpResponseRedirect
用法相同