首页 / Python教程

    如何使用Django进行URLS反向解析?

    作者:PHP中文网2018-09-15 14:02:46

    本篇文章给大家带来的内容是关于如何使用Django进行URLS反向解析?有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

    URL 与 URI
    URL : 统一资源定位符 相当于绝对路径
    URI : 统一资源标志符 相当于相对路径
    - 多个App下URL 的配置方法
    工程目录下的配置

     url(r'^App/',views.hello)

    这里需要导包,用alt+enter键导包
    App项目下

     url(r'^getinfo/',views.getinfo)

    这里也需要导包,用alt+enter键导包
    以上如果不加'/' url在做正则匹配的时候,就会出现匹配出错的情况,拿到假的页面
    - get请求带参 URl带参传递
    url('?P<参数>正则匹配'/,views.函数名称) 绑定参数
    比如通过百度搜美女 http://www.baidu.com/?wd="美女"
    需要在url后面跟上 "?请求参数"
    带参传递
    关键字参数写法

    (?P<year>\d+)
      url(r'^hi/(?P<year>\d+)/(?P<month>\d+)/(?                    P<day>\d+)/',views.gethi)

    - URL 反向解析:
    1, 什么是 url 反向解析
    动态获取url的一种方式. 比如: 动态获取别的电影网站地址,如果对方改变了网址,我们也需要修改,但是如果使用了反向解析,动态获取的情况下 不管对方如何变化,我们都能拿到
    2, 反向解析配置:
    在App目录urls下配置 加上 name属性 name ='xxx'
    在工程目录下的urls里面,再给配置一个namespace="名字自定义" 配置时需要注意,namespace是在include里面
    url(r'^Two/', include('Two.urls',namespace="fan"))
    3, 跳转方式:
    - 如果需要带参跳转,如果参数是位置参数,使用args参数
    - 如果参数是关键字参数,使用kwargs 以字典的形式传送参数

      超链接跳转,: <a href =  ' {% url ' namespace: name ' %}'></a>

    在视图函数views中跳转,:
    1, 使用HttpResponseRedirect('路径地址')--->固定获取(地址值固定不变)
    2, 使用HttpResponseRedirect( reverse( 'namespace: name' ) )方法 动态获取(反向解析)

    以上就是如何使用Django进行URLS反向解析?的详细内容,更多请关注php中文网其它相关文章!

    标签:

PHP中文网

未登录