• Django中url匹配规则的补充


    Django中url匹配规则是在urls.py文件中配置的。

    1、关于正则匹配优先级

    在url匹配列表中,如果第一条和第二条同时满足匹配规则,则优先匹配第一条。

    在url匹配列表中,如果第一条为正则模糊匹配,第二条为精确匹配,则优先匹配第一条。如下:

    url(r'^2016/([0-9]{2})/$',views.001),
    url(r'^2016/07/$',views.002),

    当请求url为localhost:8000/2016/07/时,也会转发给views.001处理。

    将匹配到的数字传给视图中函数时,永远是以字符串的形势传递的。

    2、关于二级路由子url配置

    请求经过全局url转发到二级url(子url)时,若子url没有任何值,使用'^$'代替(匹配首页)。如下:

    全局url的配置

     url(r'^payment/',include('test1.urls')),

    请求url为localhost:8000/payment时,交给test1下面的urls。

    test1中url的配置

    url(r'^&',views.db_handle),

    即请求的url为localhost:8000/payment时,交给db_handle函数处理。

    3、传递额外参数

    全局url指定子url时,可以传递一个参数。并且该参数在子url指定的函数中必须接收。如下:

    全局url配置

    url(r'^test1/',include('test1.urls'),{'name':'ahai'}),

    参数{'name':'ahaii'}会随着子url(test1.urls)传递给对应的函数,该函数必须设置一个形参来接收该值。该用法可用在当用户登陆主站后,访问子站时,将用户信息传递给子站,用户无须再登陆。该值一般都是动态值传递。

  • 相关阅读:
    【设计模式:单例模式】使用单例模式载入properties文件
    Java 强引用,软引用,弱引用
    sharepreference实现记住password功能
    WWDC2015
    activity之栈管理
    LeetCode:Palindrome Number
    ZOJ 3822 Domination(概率dp)
    WCF报 当前已禁用此服务的元数据发布的错误
    HTML常见标签总结
    xml基础总结
  • 原文地址:https://www.cnblogs.com/ahaii/p/5710458.html
Copyright © 2020-2023  润新知