zoukankan      html  css  js  c++  java
  • django的url反向解析

    目的:防止页面中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 = 字典)

        

  • 相关阅读:
    Java并发之AQS详解
    Linux查看日志常用命令
    换了电脑如何使用hexo继续写博客
    职业保持年轻感
    如何用区块链技术解决信任问题?Fabric 架构深度解读
    一致性哈希(hash)算法
    你真的了解volatile关键字吗?
    Spring的IOC原理
    使用Hexo+Github搭建属于自己的博客(进阶)
    使用Hexo+Github搭建属于自己的博客(基础)
  • 原文地址:https://www.cnblogs.com/gj827/p/9786179.html
Copyright © 2011-2022 走看看