路由-Django路由分发(个人记录)

路由-路由分发

path('user/add/', views.login),
path('user/delete/', views.login),
path('user/edit/', views.login),
path('user/list/', views.login),

手动分发

作用:纯粹帮助提取功能的URL,防止重复编写。( appname, namespance一般不写,直接写None)

path('user/',     ([],None,None)     ),
path('user/',     (元素,appname元素,namespance元素)    ),
path('user/', ([
                   path('add/', views.login),
                   path('delete/', views.login, name="user_delete"),   # /user/delete/
                   path('edit/', views.login),
                   path('list/', views.login),
               ], None, None)),                   # appname, namespance

include分发

字符串为参数

字符串是指定的分发下去的url.py文件路径

本质上include的源码就是做了上面手动分发的事,返回了个元组,元组里面是个列表,以及两个None

path('user/',     ([],None,None)     ),
path('user/', include("apps.user.urls",namespace="x1")),  # 一般是每个app中urls
urlpatterns = [
    path('add/', views.login),
    path('delete/', views.login,name="delete"),   # /user/delete/
    path('edit/', views.login),
    path('list/', views.login),
]

app_name = "user"

元组为参数(比较少用)

path('user/', include( ( [] , None ), None))
path('user/', include(([
                           path('add/', views.login),
                           path('delete/', views.login),  # /user/delete/
                           path('edit/', views.login),
                           path('list/', views.login),
                     ], None),None)),							# appname,namespace

你可能感兴趣的:(django开发笔记,django,python,后端)