URLconf

  • 浏览者通过在浏览器的地址栏中输入网址请求网站
  • 对于Django开发的网站,由哪一个视图进行处理请求,是由url匹配找到的

配置URLconf

  • 1.settings.py

    • 指定url配置

      ROOT_URLCONF = '项目.urls'
      
  • 2.项目中urls.py

    • 匹配成功后,包含到应用的urls.py

      url(正则, include('应用.urls'))
      
  • 3.应用中urls.py

    • 匹配成功后,调用views.py对应的函数

      url(正则, views.函数名)
      
  • 4.提示

      1. 正则部分推荐使用 r,表示字符串不转义,这样在正则
      表达式中使用 \ 只写一个就可以
    
      2. 不能在开始加反斜杠,推荐在结束加反斜杠
          正确:path/
          正确:path
          错误:/path
          错误:/path/
    
      3. 请求的url被看做是一个普通的python字符串,进行匹配时不包括域名、get或post参数
          3.1 如请求地址如下:
              http://127.0.0.1:8000/18/?a=10
          3.2 去掉域名和参数部分后,只剩下如下部分与正则匹配
              18/
    

说明:

虽然路由结尾带/能带来上述好处,但是却违背了HTTP中URL表示资源位置路径的设计理念。

是否结尾带/以所属公司定义风格为准。