分布式路由
- Django中,主路由配置文件(urls.py)可以不处理用户具体路由,主路由配置文件可以做请求的分发(分布式请求处理)。具体的请求可以有各自的应用来进行处理
配置分布式路由
-
步骤1: 主路由中调用 include 函数
- 语法: include('app名字.url模块名')
- 作用: 用于将当前路由转到各个应用的路由配置文件的 urlpatterns 进行分布式处理
# 项目下的主路由 utls.py from django.contrib import admin # 导入admin功能模块 from django.urls import path, include # 导入URL编写模块 from . import views # 整个项目的URL集合,每个元素代表一条URL信息 urlpatterns = [ # 设定admin的URL。'admin/' 代表127.0.0.1:8000/admin 地址信息,admin后面的斜杠是路径分隔符; # admin.site.urls 是URL的处理函数,也成为了视图函数 path('admin/', admin.site.urls), path('test_static', views.test_static), # URL为空,代表为网站的域名,即 127.0.0.1:8000,通常是网站的首页 # include将该URL分发给index的urls.py处理 path('', include('index.urls')), path('', include('bookstore.urls')), path('', include('lx_url.urls')), path('', include('lx_views.urls')), ]
-
步骤2: 应用下配置 url.py
- 应用下手动创建 urls.py 文件,内容结构同主路由完全一样
# app下的路由文件 index/urls.py from django.urls import path, re_path from . import views urlpatterns = [ path('index/<id>.html', views.ProductList.as_view(), {'name': 'phone'}), ]