首页 > 技术文章 > Django处理一个请求的过程

kunpengv5 2017-11-15 18:36 原文

一、Django处理一个请求的过程

 

Django处理一个请求的过程如下:

  1. Django使用的是根URLconif模块,这个值通常通过ROOT_URLCONF设置:url到视图函数的映射关系(在.../settings.py文件中)

  2. Django加载URLconf模块(urls.py),并寻找可用的urlpatterns,匹配规则参考二
  3. Django依次匹配每个URL模式,在与请求的URL匹配的第一个模式处停下来
  4. 一旦其中一个正则表达式匹配上,则Django将请求指向对应的视图函数处理
  5. 如果没有匹配到,则过程中抛出一个异常,则Django将调用一个适当的错误处理视图

二、正则表达式匹配

urls.py文件示例如下:

                                                r'^index/$'
        匹配符                                                     含义
           r 字符串前面加"r"是为了防止字符串中出现类似“\t”字符串时被转义
          ^ 匹配字符串的开头;在多行模式中匹配每一行的开头,如^abc匹配的abcdd
          $ 匹配字符串末尾;在多行模式中匹配每一行末尾,如abc$,匹配的efgabc

 

推荐阅读