Django中多种重定向方法使用详解


Posted in Python onJuly 17, 2019

前言

本文使用了Django1.8.2

使用场景,例如在表单一中提交数据后,需要返回到另一个指定的页面即可使用重定向方法

一、 使用HttpResponseRedirect

fuhao The first argument to the constructor is required ? the path to redirect to. This can be a fully qualified URL or an absolute path with no domain。”参数可以是绝对路径跟相对路径”

from django.http import HttpResponseRedirect 

@login_required 
def update_time(request): 
  #表单处理OR逻辑处理 
  return HttpResponseRedirect('/') #跳转到主界面 
#如果需要传参数
return HttpResponseRedirect('/commons/index/?message=error')

二 redirect和reverse

from django.core.urlresolvers import reverse 
from django.shortcuts import redirect 
#https://docs.djangoproject.com/en/1.8.2/topics/http/shortcuts/ 

@login_required 
def update_time(request): 
  #进行要处理的逻辑 
  return redirect(reverse('test.views.invoice_return_index', args=[])) #跳转到index界面 

redirect 类似HttpResponseRedirect的用法,也可以使用 字符串的url格式 /..index/?a=add
reverse 可以直接用views函数来指定重定向的处理函数,args是url匹配的值。

三、 其他

#其他的也可以直接在url中配置
from django.views.generic.simple import redirect_to 
在url中添加 (r'^test/$', redirect_to, {'url': '/author/'}), 

#我们甚至可以使用session的方法传值
request.session['error_message'] = 'test' 
redirect('%s?error_message=test' % reverse('page_index')) 
#这些方式类似于刷新,客户端重新指定url。

#重定向,如果需要携带参数,那么能不能直接调用views中 url对应的方法来实现呢,默认指定一个参数。
#例如view中有个方法baseinfo_account, 然后另一个url(对应view方法为blance_account)要重定向到这个baseinfo_account。
#url中的配置:
urlpatterns = patterns('', 
  url(r'^index/', 'account.views.index_account'), 
  url(r'^blance/', 'account.views.blance_account'), 
) 
# views.py
@login_required 
def index_account(request, args=None): 
  ​#按照正常的url匹配这么写有点不合适,看起来不规范 
  ​if args: 
    print args 
  return render(request, 'accountuserinfo.html', {"user": user}) 


@login_required   
def blance_account(request): 
  return index_account(request, {"name": "orangleliu"}) 
#测试为:
#1 直接访问 /index 是否正常 (测试ok)
#2 访问 /blance 是否能正常的重定向到 /index页面,并且获取到参数(测试ok,页面为/index但是浏览器地址栏的url仍然是/blance)
#这样的带参数重定向是可行的。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
简单了解Python下用于监视文件系统的pyinotify包
Nov 13 Python
Python网络编程使用select实现socket全双工异步通信功能示例
Apr 09 Python
使用Python微信库itchat获得好友和群组已撤回的消息
Jun 24 Python
详解pyenv下使用python matplotlib模块的问题解决
Nov 29 Python
Python使用Pandas对csv文件进行数据处理的方法
Aug 01 Python
详解numpy矩阵的创建与数据类型
Oct 18 Python
关于Flask项目无法使用公网IP访问的解决方式
Nov 19 Python
TFRecord文件查看包含的所有Features代码
Feb 17 Python
Python日志syslog使用原理详解
Feb 18 Python
Python猴子补丁Monkey Patch用法实例解析
Mar 23 Python
python如何变换环境
Jul 21 Python
python 视频下载神器(you-get)的具体使用
Jan 06 Python
200行python代码实现2048游戏
Jul 17 #Python
Django后端接收嵌套Json数据及解析详解
Jul 17 #Python
Python制作微信好友背景墙教程(附完整代码)
Jul 17 #Python
python代码编写计算器小程序
Mar 30 #Python
Django Channels 实现点对点实时聊天和消息推送功能
Jul 17 #Python
Python Django的安装配置教程图文详解
Jul 17 #Python
python按键按住不放持续响应的实例代码
Jul 17 #Python
You might like
PHP输出控制功能在简繁体转换中的应用
2006/10/09 PHP
PHP函数preg_match_all正则表达式的基本使用详细解析
2013/08/31 PHP
使用PHP和JavaScript判断请求是否来自微信内浏览器
2015/08/18 PHP
php生成word并下载代码实例
2019/03/15 PHP
jQuery Tools tooltip使用说明
2012/07/14 Javascript
利用Javascript判断操作系统的类型实现不同操作系统下的兼容性
2013/01/29 Javascript
判断及设置浏览器全屏模式
2014/04/20 Javascript
2014 HTML5/CSS3热门动画特效TOP10
2014/12/07 Javascript
JS实现从顶部下拉显示的带动画QQ客服特效代码
2015/10/24 Javascript
JavaScritp添加url参数并将参数加入到url中及更改url参数的方法
2015/10/26 Javascript
form表单转Json提交的方法(推荐)
2016/09/23 Javascript
用nodejs搭建websocket服务器
2017/01/23 NodeJs
微信小程序如何获知用户运行小程序的场景教程
2017/05/17 Javascript
node.js博客项目开发手记
2018/03/16 Javascript
微信小程序拍照和摄像功能实现方法示例
2019/02/01 Javascript
详解vue在项目中使用百度地图
2019/03/26 Javascript
详解微信小程序实现跑马灯效果(附完整代码)
2019/04/29 Javascript
vue渲染方式render和template的区别
2020/06/05 Javascript
[46:23]完美世界DOTA2联赛PWL S2 FTD vs Magma 第一场 11.20
2020/11/23 DOTA
python自动化测试之连接几组测试包实例
2014/09/28 Python
python同时给两个收件人发送邮件的方法
2015/04/30 Python
python判断一个数是否能被另一个整数整除的实例
2018/12/12 Python
用python实现名片管理系统
2020/06/18 Python
利用Python中的Xpath实现一个在线汇率转换器
2020/09/09 Python
如何使用Django Admin管理后台导入CSV
2020/11/06 Python
CSS3中几个新增加的盒模型属性使用教程
2016/03/01 HTML / CSS
详解canvas在圆弧周围绘制文本的两种写法
2018/05/22 HTML / CSS
Missguided美国官网:英国时尚品牌
2018/01/18 全球购物
亚洲领先的旅游体验市场:Voyagin
2019/11/23 全球购物
澳大利亚Rockwear官网:女子瑜伽、健身和运动服
2021/01/26 全球购物
大学生的网上创业计划书
2013/12/31 职场文书
机关道德讲堂实施方案
2014/03/15 职场文书
公开服务承诺制度
2014/03/26 职场文书
安全施工标语
2014/06/07 职场文书
政府个人对照检查材料思想汇报
2014/10/08 职场文书
幼儿园园长新年寄语2015
2014/12/08 职场文书