Django中reverse反转并且传递参数的方法


Posted in Python onAugust 06, 2019

在写项目的过程中,有些函数不可避免的需要传入参数进去,所以我们在使用reverse进行反转时也需要传递参数。这个时候我们就可以使用 ‘reverse()' 中的 kwargs 参数了,它将传入一个字典形式的变量。kwargs 也支持传入多个参数

示例代码

首先在Django项目中新建一个‘reverse'的app用来测试。

在views.py中写入以下代码

from django.shortcuts import render,redirect,reverse
from django.http import HttpResponse

# Create your views here.
def index(request):
  username = request.GET.get('username')
  if username:
    return HttpResponse('首页')
  else:
    url = reverse('reverse:userInfo',kwargs={'user_id':10})
    return redirect(url)

def login(request):
  return HttpResponse('登录页面')

def userInfo(request,user_id):
  text = '你的id是: %s' % user_id
  return HttpResponse(text)

然后新建一个urls.py文件,写入代码

from django.urls import path
from . import views

app_name = 'reverse'

urlpatterns = [
  path('',views.index,name = 'index'),
  path('login/',views.login,name = 'login'),
  path('userInfo/<user_id>/',views.userInfo,name = 'userInfo')
]

在主urls.py中将reverse的urls包含进去

from django.urls import path,include

urlpatterns = [
 path('user/',include('reverse.urls'))
]

然后输入就可以网址进行测试了。

如果想要添加查询字符串的参数,则必须手动的进行拼接。示例代码如下:

url = reverse('<反转回的url地址>') + "?<查询字符窜参数>=<查询字符窜的值>"
return redirect(url)

以上这篇Django中reverse反转并且传递参数的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
老生常谈python的私有公有属性(必看篇)
Jun 09 Python
Python探索之pLSA实现代码
Oct 25 Python
Selenium的使用详解
Oct 19 Python
Python中的枚举类型示例介绍
Jan 09 Python
使用Python自动化破解自定义字体混淆信息的方法实例
Feb 13 Python
深入了解Django View(视图系统)
Jul 23 Python
解决Tensorflow 使用时cpu编译不支持警告的问题
Feb 03 Python
Python基础之列表常见操作经典实例详解
Feb 26 Python
python opencv实现图片缺陷检测(讲解直方图以及相关系数对比法)
Apr 07 Python
Numpy中np.random.rand()和np.random.randn() 用法和区别详解
Oct 23 Python
解决PyCharm无法使用lxml库的问题(图解)
Dec 22 Python
Python与C++中梯度方向直方图的实现
Mar 17 Python
matplotlib命令与格式之tick坐标轴日期格式(设置日期主副刻度)
Aug 06 #Python
python+openCV调用摄像头拍摄和处理图片的实现
Aug 06 #Python
对Django 转发和重定向的实例详解
Aug 06 #Python
django 环境变量配置过程详解
Aug 06 #Python
PyQt5基本控件使用之消息弹出、用户输入、文件对话框的使用方法
Aug 06 #Python
如何在Django配置文件里配置session链接
Aug 06 #Python
在django中,关于session的通用设置方法
Aug 06 #Python
You might like
BBS(php &amp; mysql)完整版(一)
2006/10/09 PHP
让PHP COOKIE立即生效,不用刷新就可以使用
2011/03/09 PHP
smarty内置函数config_load用法实例
2015/01/22 PHP
xml和web特殊字符
2009/04/28 Javascript
javascript 不间断的图片滚动并可点击
2010/01/15 Javascript
js实时监听文本框状态的方法
2011/04/26 Javascript
JS+CSS设置img在DIV中只显示Img垂直居中的部分
2013/10/24 Javascript
鼠标移入移出事件改变图片的分辨率的两种方法
2013/12/17 Javascript
解决JS中乘法的浮点错误的方法
2014/01/03 Javascript
JavaScript实现给按钮加上双重动作的方法
2015/08/14 Javascript
Vue插件写、用详解(附demo)
2017/03/20 Javascript
AngularJS获取json数据的方法详解
2017/05/27 Javascript
js指定步长实现单方向匀速运动
2017/07/17 Javascript
vue2.0 element-ui中el-select选择器无法显示选中的内容(解决方法)
2018/08/24 Javascript
微信小程序下拉框功能的实例代码
2018/11/06 Javascript
如何使用less实现随机下雪动画详解
2019/01/02 Javascript
简单了解vue.js数组的常用操作
2019/06/17 Javascript
使用layui实现的左侧菜单栏以及动态操作tab项方法
2019/09/10 Javascript
JavaScript使用prototype属性实现继承操作示例
2020/05/22 Javascript
Python爬虫利用cookie实现模拟登陆实例详解
2017/01/12 Python
Python 备份程序代码实现
2017/03/06 Python
解决Pycharm调用Turtle时 窗口一闪而过的问题
2019/02/16 Python
python opencv 简单阈值算法的实现
2019/08/04 Python
python实现Oracle查询分组的方法示例
2020/04/30 Python
python实现学生信息管理系统(精简版)
2020/11/27 Python
纯CSS3编写的的精美动画进度条(无flash/无图像/无脚本/附源码)
2013/01/07 HTML / CSS
基于CSS3实现立方体自转效果
2016/03/01 HTML / CSS
上海期货面试题
2014/01/31 面试题
四种会话跟踪技术
2015/05/20 面试题
预防传染病方案
2014/06/14 职场文书
财政专业大学生职业生涯规划书
2014/09/17 职场文书
2014学校领导四风问题对照检查材料思想汇报
2014/09/22 职场文书
2014年路政工作总结
2014/12/10 职场文书
2015年计算机教师工作总结
2015/07/22 职场文书
Pytorch可视化的几种实现方法
2021/06/10 Python
MySQL 数据库范式化设计理论
2022/04/22 MySQL