Django框架之路由详解
为了给一个应用设计URL,您需要创建一个Python模块,通常被称为** URLconf **(URL配置)。
这个模块是纯粹的Python代码,包含URL模式(简单的正则表达式)到Python函数(你的视图)的简单映射。
Django如何处理一个请求:
当一个用户请求Django站点的一个页面,下面是Django系统决定执行以下Python代码使用的算法:
- Django,确定使用根URLconf模块。通常,这是ROOT_URLCONF设置的值,但如果放置HttpRequest对象拥有urlconf属性(通过中间件设置),则其值将被替换为ROOT_URLCONF设置。
- Django加载该Python模块并寻找可用的urlpatterns。它是django.urls.path()和(或)django.urls.re_path()实例的序列(sequence)。
- Django依次匹配每个URL模式,在与请求的URL匹配的第一个模式停下来。
- 一旦有URL匹配成功,Djagno引入并调用相关的视图,这个视图是一个简单的Python函数(或基于类的视图)。
- 如果没有URL被匹配,或者匹配过程中出现了异常,Django会调用一个适当的错误处理视图。
Django框架中的路由定义方式:
- django.urls.path()
- django.urls.re_path()
Django框架中路由的参数捕获:
使用path可以捕获url中的一部分内