Django框架学习之路由系统(二)


from django.urls import path

urlpatterns = [
path(route, views[,kwargs][,name]),
]

from django.urls import path, re_path
from . import views
'''
path:
str-匹配任何非空字符串,不包括路径分隔符,'/'。如果表达式中没有包含转换器,这是默认的。
int-匹配零或任何正整数。返回INT.
slug-匹配任何由ASCII字母或数字组成的弹格字符串,再加上连字符和下划线字符。例如building-your-1st-django-site.
uuid-匹配格式化的UUID。为了防止多个URL映射到同一个页面,必须包含破折号,字母必须是小写。例如075194d3-6885-417e-a8a8-6c931e272f00。。
path-匹配任何非空字符串,包括路径分隔符,'/'。这允许您与完整的URL路径进行匹配,而不仅仅是URL路径的一部分,
re_path:
正则匹配
'''
urlpatterns = [
# 给URL设置别名,可以让您明确地从Django的其他地方引用它,特别是在模板中。
path('url.html', views.url, {'id': 23}, name='url'),
# views.url_int函数接收参数a,可进行处理后再返回给前端
path('url.html/<int:a>', views.url_int),
path('url.html/<uuid:u>', views.url_uuid),
path('url.html/<slug:s>', views.url_slug),
path('url.html<str:str>', views.url_str),
path('url.html<path:p>', views.url_path),
# 路由分发,在app中创建urls.py文件
path('app01/', include('app01.urls'),
re_path(r'urls.html/(?P<phone>[0-9]{11})', views.urls),
re_path(r'urls.html/(?P<year>[12]?[0-9]{3})/(?P<month>(1[0-2]|[1-9]))', views.urls_date, {'day': 12}),

]

posted on 2018-12-09 13:42  为你一千万遍  阅读(95)  评论(0编辑  收藏  举报