路由-普通路径和正则路径
普通路径
<类型:组名>
from django.contrib import admin
from django.urls import path
from apps.web import views
urlpatterns = [
path('home/', views.home),
path('news/<int:nid>/edit/', views.news),
path('article/', views.article),
]
- int,整数
- str,字符串 (排除/)
- slug,字母+数字+下滑线±
- uuid,uuid格式
- path,路径,可以包含 /
正则路径
(?P<组名>正则表达式)
-
在django1版本用的多。
from django.conf.urls import url # 用 url 需要引入 urlpatterns = [ url(r'^admin/$', admin.site.urls), url(r'^index/$', views.index), # 普通路径 url(r'^articles/([0-9]{4})/$', views.articles), # 正则路径 url(r'^article/(?P<pk>\d+)/$',views.articles), # 带组名的正则路径 ]
-
在django2+版本用的少
from django.urls import re_path # 用re_path 需要引入 urlpatterns = [ path('admin/', admin.site.urls), path('index/', views.index), # 普通路径 re_path(r'^articles/([0-9]{4})/$', views.articles), # 正则路径 re_path(r'user/(?P<xxid>\w+-\d+)/(?P<yid>\d+)/', views.articles), # 带组名的正则路径 ]