Django 1点几跟2点几的区别

2.0path 是什么路径就是什么路径。第一个参数不再是正则表达式。

转换器

path的分组

<int:year> 匹配正整数

<str:year> 除了斜杠之外的非空字符

<slug:year> 字母数字下划线-组成的字符串

<uuid:year> 随机字符串 (可以用来生成客户的id)

<path:year> 任意非空字符串

自定义转换器

对于一些复杂或者复用的需要,可以定义自己的转化器。转化器是一个类或接口,它的要求有三点:

  • regex 类属性,字符串类型
  • to_python(self, value) 方法,value是由类属性 regex 所匹配到的字符串,返回具体的Python变量值,以供Django传递到对应的视图函数中。
  • to_url(self, value) 方法,和 to_python 相反,value是一个具体的Python变量值,返回其字符串,通常用于url反向引用。
class FourDigitYearConverter:
regex = '[0-9]{4}'
def to_python(self, value):
return int(value)
def to_url(self, value):
return '%04d' % value 使用register_converter 将其注册到URL配置中:
from django.urls import register_converter, path
from . import converters, views
register_converter(converters.FourDigitYearConverter, 'yyyy')
urlpatterns = [
path('articles/2003/', views.special_case_2003),
path('articles/<yyyy:year>/', views.year_archive),
...
]

最新文章

  1. Android高手速成
  2. servlet 中文乱码问题
  3. 【奶昔队ROUND#1】
  4. Node初学者入门,一本全面的NodeJS教程(转载)
  5. Struts2 之 实现文件上传和下载
  6. jquery源码分析
  7. POJ_Fibonacci POJ_3070(矩阵快速幂入门题,附上自己写的矩阵模板)
  8. IT连创业系列:新的一年,先淫文一篇!
  9. 10-TypeScript中的接口
  10. Linux时间子系统之七:定时器的应用--msleep(),hrtimer_nanosleep()
  11. HTTP请求头中各字段解释
  12. Itreatot接口实现类中modCount的作用
  13. Android SVN上传项目
  14. Brainfuck反汇编(Python)
  15. java.lang.IllegalArgumentException: Service Intent must be explicit 解决办法
  16. v$、v_$、gv$之间的关系
  17. ThinkPHP 模型方法 setInc() 和 setDec() 使用详解
  18. LinkedList详解
  19. test20180919 递归问题
  20. 【树莓派】crontab的两个问题

热门文章

  1. ElasticSearch(五):Java操作ElasticSearch执行查询
  2. [CQOI2016]手机号码
  3. P2819 图的m着色问题(DFS)
  4. AJAX方式发送远程请求报错:No &#39;Access-Control-Allow-Origin&#39; header
  5. org.xml.sax.SAXParseException;在实体引用中, 实体名称必须紧跟在 &#39;&amp;&#39; 后面
  6. sklearn官网-多分类问题
  7. 通过this()调用有参构造方法
  8. Codeforces Round #486 (Div. 3)-B. Substrings Sort
  9. 用PhoneGap创建第一个项目
  10. scrapy框架原理学习