分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 运营维护

django的url反向解析

发布时间:2023-09-06 02:18责任编辑:郭大石关键词:urldjango

目的:防止页面中url地址改变,其他与这个URL地址有关联的都要改,减少耦合度

使用:主要分为在html中和视图函数中的使用

HTML中的使用:

  如果我们在项目的url文件中通过include导入了应用的url,那么就要在include里面指定namespace,然后再在应用的url文件里面的每个url里指定name属性。如果是直接通过项目url调用应用的视图函数,则直接设置name属性就可以,我下面以第一种方式来阐述。

   HTML中使用,格式如下:

      没有参数时候:

        {% url ‘namespace值:name值‘ %}   例如:{% url ‘test: index‘%}

      url的正则匹配带有分组的时候:

        1.带位置参数(没有通过正则表达式设置别名):

            {% url ‘namespace值:name值‘ 参数值 %}  例如:{% url ‘test: index‘ 1 %}

        2.带关键字参数(通过正则表达式设置了别名):

            {% url ‘namespace值:name值‘ 关键字参数 %} 例如:{% url ‘test: index‘ id=1 %}

在视图函数中的使用:

  视图函数中使用URL反向解析的时候需要导入reverse模块:

    from django.core.urlresolvers import reverse

    没有参数时候:

        reverse(‘namespace值:name值‘)  ------ 通过reverse函数返回的是一个带有url地址的字符串

      url的正则匹配带有分组的时候:

        1.带位置参数(没有通过正则表达式设置别名):

            reverse(‘namespace值:name值‘, args = 位置参数元组)

        2.带关键字参数(通过正则表达式设置了别名):

            reverse(‘namespace值: name值‘,  kwargs = 字典)

    

django的url反向解析

原文地址:https://www.cnblogs.com/gj827/p/9786179.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved