django路由层

目录:

  1. url基本格式
  2. url正则表达式
  3. url分组命名
  4. url反向解析
  5. 路由分发

url基本格式

url配置的本质是url与要为该url调用的视图函数之间的映射表

基本格式(1.*版本)

from django.conf.urls import url

urlpatterns = [
     url(正则表达式, views视图函数,参数,别名),
]

参数说明

  • 正则表达式:一个正则表达式字符串
  • views视图函数:一个可调用对象,通常为一个视图函数或一个指定视图函数路径的字符串
  • 参数:可选的要传递给视图函数的默认参数(字典形式)
  • 别名:一个可选的name参数

django2.0语法区别

django2.X版本中有一个叫re_path()
ps:2.x中re_path就等价于1.x中的url

from django.urls import path

from . import views

urlpatterns = [
    path('articles/2003/', views.special_case_2003),
    path('articles/<int:year>/', views.year_archive),
    path('articles/<int:year>/<int:month>/', views.month_archive),
    path('articles/<int:year>/<int:month>/<slug:slug>/', views.article_detail),
]

虽然path不支持正则表达式,但是它提供了五种转换器 (了解)

路径转换器

下列五种默认的转换器(官档翻译)

  • str - 匹配任意非空字符串,除了路径分隔符‘/’,当转换器没有包括在表达式时,这是默认的。
  • int - 匹配零或任意正整数。返回一个int
  • slug - 匹配由ASCII字母或数字组成的任何slug字符串,以及连字符和下划线字符。 例如: building-your-1st-django-site
  • uuid - 匹配格式化的UUID。 要防止多个URL映射到同一页面,必须包含短划线,并且字母必须为小写。 例如: 075194d3-6885-417e-a8a8-6c931e272f00。 返回一个UUID实例。
  • path - 匹配任何非空字符串,包括路径分隔符’/’。 这允许您匹配完整的URL路径,而不是像str一样匹配URL路径的一部分。

回到目录<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值