Django内置的URL转换器:
上节中我们说了URL中传参的情况,传递参数是通过 <> 尖括号来进行指定的。并且在传递参数的时候,可以指定这个参数的数据类型,比如文章的 id 都是 int 类型,那么可以这样写 <int:id> ,以后匹配的时候,就只会匹配到 id 为 int 类型的 url ,而不会匹配其他的 url ,并且在视图函数中获取这个参数的时候,就已经被转换成一个 int 类型了。其中还有几种常用的类型:
- str:非空的字符串类型。默认的转换器。但是不能包含斜杠;
- int:匹配任意的零或者正数的整形。到视图函数中就是一个int类型;
- slug:由英文中的横杠 - ,或者下划线 _ 连接英文字符或者数字而成的字符串;
- uuid:匹配 uuid 字符串;
- path:匹配非空的英文字符串,可以包含斜杠;
实例:
1、下图是使用到视图函数:
2、演示字符串和整形类型:
3、UUID和slug类型:
UUID生成方式:
4、path类型(可以包含/):
注:平时最常用的还是str类型