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 相关文章推荐
10个易被忽视但应掌握的Python基本用法
Apr 01 Python
在Linux下使用Python的matplotlib绘制数据图的教程
Jun 11 Python
Python打包可执行文件的方法详解
Sep 19 Python
python算法表示概念扫盲教程
Apr 13 Python
python监测当前联网状态并连接的实例
Dec 18 Python
使用python实现男神女神颜值打分系统(推荐)
Oct 31 Python
Pandas 解决dataframe的一列进行向下顺移问题
Dec 27 Python
Jupyter Notebook远程登录及密码设置操作
Apr 10 Python
python中sympy库求常微分方程的用法
Apr 28 Python
python中常见错误及解决方法
Jun 21 Python
在Python中字典按值排序的实现方法
Nov 12 Python
理解深度学习之深度学习简介
Apr 14 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
咖啡与水的关系
2021/03/03 冲泡冲煮
php cookie 登录验证示例代码
2009/03/16 PHP
PHP中数组的分组排序实例
2014/06/01 PHP
php实现通过cookie换肤的方法
2015/07/13 PHP
PHP上传文件参考配置大文件上传
2015/12/16 PHP
Laravel中Trait的用法实例详解
2016/03/16 PHP
PHP实现的下载远程文件类定义与用法示例
2017/07/05 PHP
用于自动添加Digg This!按钮的JavaScript
2006/12/23 Javascript
JavaScript实现找出数组中最长的连续数字序列
2014/09/03 Javascript
express的中间件bodyParser详解
2014/12/04 Javascript
node.js集成百度UE编辑器
2015/02/05 Javascript
Node.js重新刷新session过期时间的方法
2016/02/04 Javascript
基于Javascript实现二级联动菜单效果
2016/03/04 Javascript
Bootstrap与KnockoutJs相结合实现分页效果实例详解
2016/05/03 Javascript
BootStrap表单验证实例代码
2017/01/13 Javascript
Vue指令的钩子函数使用方法
2017/03/20 Javascript
新手如何快速理解js异步编程
2019/06/24 Javascript
js模拟实现百度搜索
2020/06/28 Javascript
node.js爬虫框架node-crawler初体验
2020/10/29 Javascript
python 不关闭控制台的实现方法
2011/10/23 Python
python从ftp下载数据保存实例
2013/11/20 Python
opencv python 图像去噪的实现方法
2018/08/31 Python
Python实现查找最小的k个数示例【两种解法】
2019/01/08 Python
python操作openpyxl导出Excel 设置单元格格式及合并处理代码实例
2019/08/27 Python
使用Python进行中文繁简转换的实现代码
2019/10/18 Python
详解selenium + chromedriver 被反爬的解决方法
2020/10/28 Python
世界上最大的各式箱包网络零售店:eBag
2016/07/21 全球购物
全球最大的网上自行车商店:Chain Reaction Cycles
2016/12/02 全球购物
戴尔英国官网:Dell英国
2017/05/27 全球购物
捷克玩具商店:Bambule
2019/02/23 全球购物
吃空饷专项治理工作实施方案
2014/03/04 职场文书
《忆江南》教学反思
2014/04/07 职场文书
竞选文艺委员演讲稿
2014/04/28 职场文书
小学网上祭英烈活动总结
2014/07/05 职场文书
2015年个人实习工作总结
2014/12/12 职场文书
学习雷锋精神倡议书
2015/04/27 职场文书