django路由转换器主要有下面这四种类型
str –
匹配除了’/’之外的非空字符串
比如’v1/uers/<str:username>’就可以匹配到/v1/users/xiaogang
int-
匹配0或任何正整数。返回-个int
比如’page/<int: pg>’就可以匹配到’/page/12’
slug-
匹配任意由ASCII字母或者数字以及连字符和下划线组成的短标签
比如’detai/<slug: sl>’就可以匹配到’/detail/this-is-django’
path-
匹配非空字段,包括路径分隔符
比如’v1/users/<path: ph>’就可以匹配到”/v1/good/a/b/c”
小练习
路由匹配:/pages/num1(2位数)/操作字符[add,mul,sub]/num2(两位数字),从路由中提取数据,做出相应的操作后边返回给浏览器
例:
访问127.0.0.1:8000/104/add/205
浏览器页面显示结果:309
下面是我写的结果
先写一条路由在urls.py中
再写视图函数在views.py中
注意request后面的三个参数,是需要和路由中的转换器变量保持一致。
在命令行输入python manage.py runserver重启服务器
浏览器输入访问相应的地址,返回结果,如下图
djangdo中这个路由转换器使用还是非常香的,可以解决大部分的问题。
标签: