Django框架进阶1-路由 笔记
Django框架进阶
Django的路由机制
Django的URL路由配置
Settings.py文件中ROOT_URLLCONF变量指定全局路由文件名称
我们通过工程的settings文件找到这个变量,就能知道工程的第一个入口文件在哪里
打开mystie.urls文件 我们可以看到一个变量叫做urlpatterns 这个变量是Django工程预定的变量值 该变量是列表类型,(path,path,path…)表示的就是url中的每一个路由的定义关系。
其中的元素有两种 path()或者re_path()
路由的每一个元素由函数path()和re_path()处理
以path为例
下面将逐一讲述这三种方式
上图第四个path函数有三个变量作为参数进入了views
第三个 正则表达式
注意 只要我们使用了字符串 使用了正则表达式 就必须用re_path()
1简单形式 不提取任何参数 指的是0-9作为一个字符 4个字符 表示匹配这样类型的字符串
2命名形式 上图指的是在这一部分提取一个变量 这个变量名是year 变量形式是0-9的字符 重复4次
PS:通过正则表达式提取的字符串类型统一是字符串 不能是其他类型
功能1 分段路径组合形成总路径
用户的URL:entry通过全局路由进入下一级局部路由appA/urls 在局部路由中又有两个路径help跟sub。
功能2 路径去重!!
我们之前的实例 运行server找不到当前的响应文件
解决方法:在主路径文件中增加path 路径为空 空路径对应的就是根目录的处理函数
Ps:第二行re_path()用的是正则表达式表达方法 效果一样