了解这个问题,源于昨天开发时遇到的一个小小的问题。

问题描述如下:

比如,我有一个url,定义如下:

path('res_edit/<app>/<env>/', AppResEditView.as_view(), name='res_edit'),

那如果我现在拿到一个url是如下:

/res_edit/App_70/UAT/

那么,问题来了:

我如何通过django原生的途径,拿到app=App_70, env=UAT这样的变量?

============================================================

找了一些文档,最后,发现官网的还是最有效:

https://docs.djangoproject.com/en/2.1/ref/urlresolvers/

原来,resolve函数就可以返回一个三元组,而其中的字典,即我们需要的东东。如下:

func, args, kwargs = resolve(self.request.path)
app = kwargs['app']
env = kwargs['env']

官方说明如下:

resolve(pathurlconf=None)[source]

path is the URL path you want to resolve. As with reverse(), you don’t need to worry about the urlconf parameter. The function returns a ResolverMatchobject that allows you to access various metadata about the resolved URL.

If the URL does not resolve, the function raises a Resolver404 exception (a subclass of Http404) .

django url解析中的ResolverMatch的更多相关文章

  1. Django UrL 解析

    Django的路由系统 URLconf 本质是URL与要为该URL调用的视图函数之间的映射表:你就是以这种方式告诉Django,对于客户端发来的某个URL调用哪一段逻辑代码对应执行. 1.1 djan ...

  2. Django的url解析

    Django中采用正则表达式来匹配所请求的url,这个叫做URLconf,作为MVC中的C(控制器), 这样再调用相应的试图,达到控制器控制试图的显示的效果. 看一下Django的url解析过程 第一 ...

  3. django url 反响解析,视图

    1. 内容回顾 1. 模板语言(字符串替换) 1. 母版和继承 1. 什么时候用母版? html页面有重复的代码,把它们提取出来放到一个单独的html文件. (比如:导航条和左侧菜单) 2. 子页面如 ...

  4. Django url配置 正则表达式详解 分组命名匹配 命名URL 别名 和URL反向解析 命名空间模式

    Django基础二之URL路由系统 本节目录 一 URL配置 二 正则表达式详解 三 分组命名匹配 四 命名URL(别名)和URL反向解析 五 命名空间模式 一 URL配置 Django 1.11版本 ...

  5. django反向解析URL和URL命名空间

    django反向解析URL和URL命名空间 首先明确几个概念: 1.在html页面上的内容特别是向用户展示的url地址,比如常见的超链接,图片链接等,最好能动态生成,而不要固定. 2.一个django ...

  6. ThinkPHP中URL解析原理,以及URL路由使用教程!

    几个概念: THINKPHP 是一个MVC框架,使用PATHINFO解析出分组名,模块名,方法名,以及参数. PATHINFO:就是 http://localhost/index.php/Home/I ...

  7. DNS解析中的A记录、AAAA记录、CNAME记录、MX记录、NS记录、TXT记录、SRV记录、URL转发等

    AA记录: 将域名指向一个IPv4地址(例如:100.100.100.100),需要增加A记录 NSNS记录: 域名解析服务器记录,如果要将子域名指定某个域名服务器来解析,需要设置NS记录 SOASO ...

  8. 「Python 编程」编码实现网络请求库中的 URL 解析器

    摘要:怎么写出更短的代码并不是这次要讨论的话题.今天我们来研究一下:运行代码的计算机是如何找到目标服务器的? 相信各位 Python 开发者都用过 Requests 库,有些朋友还用过 WebSock ...

  9. Django url()函数详解

    url()函数看起来的格式象: url(r^/account/$', views.index, name=index) ,它可以接收四个参数,分别是两个必选参数: regex . view 和两个可选 ...

随机推荐

  1. mysql学习笔记--- 字符串函数、日期时间函数

    一.常见字符串函数: 1.CHAR_LENGTH  获取长度(字符为单位) 2.FORMAT  格式化 3.INSERT  替换的方式插入 4.INSTR  获取位置 5.LEFT/RIGHT  取左 ...

  2. Java编程思想 学习笔记6

    六.访问权限控制 访问控制(或隐藏具体实现)与“最初的实现并不恰当”有关. 如何把变动的事物与保持不变的事物区分开来,这是面向对象设计中的一个基本问题. 为了解决这一问题,Java提供了访问权限修饰词 ...

  3. python番外篇--sql注入

    一.sql注入概念介绍 所谓SQL注入,就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令.具体来说,它是利用现有应用程序,将(恶意的)S ...

  4. Nginx URL匹配

      Nginx 下 location模块  可以实现对网页URL进行分析处理 location ~ .*\.(gif|jpg|jpeg|png|bmg|swf)$ { // 扩展名为gif|jpg|j ...

  5. NOIP2018TG题解

    应该不会被禁赛吧qwq Day1 T1 铺设道路 €€£:我 抄 我 自 己 我考场上写的是一个类似于差分的做法,就是开个数组表示某个位置是否贡献答案,从小到大枚举高度,那么一个位置能贡献答案当且仅当 ...

  6. JS获取今天和上个月的今天

    function getLastMonth(){ var now=new Date(); var year = now.getFullYear();//getYear()+1900=getFullYe ...

  7. maven配置jdk1.8环境

    <!-- 局部jdk配置,pom.xml中 --> <build> <plugins> <plugin> <groupId>org.apac ...

  8. Http协议的理解

    作者技术有限,这篇博文都是结合网上的文章和自己的理解而写的,若存在错误,请无私指出,十分感谢! 协议,就是一种标准,即大家都要遵守的标准. 举个简单的例子:在中国,几乎人人都会讲普通话,不同地区的人有 ...

  9. SpringBoot使用其他的Servlet容器

    <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring- ...

  10. manjaro 的配置

    一.更新源的配置: 1).自动方法: 在 终端 执行下面的命令从官方的源列表中对中国源进行测速和设置 sudo pacman-mirrors -c China 2).手动方法 自动方法(上面的方法1, ...