Django路由控制器urls
路由, 是一种映射关系,是把客户端请求的url地址和用户请求的应用程序(这里指django里面的视图进行一对一绑定映射的一种关系)。
在django中所有的路由最终都被保存到一个变量 urlpatterns., urlpatterns必须声明在主应用下的urls.py总路由中,这是由配置文件settings设置的。
在django运行中,当客户端发送了一个http请求到服务端,服务端的web服务器则会从http协议中提取url地址, 从程序内部找到项目中添加到urlpatterns里面的所有路由信息的url进行遍历匹配。如果相等或者匹配成功,则调用当前url对象的视图方法。
在给urlpatterns路由列表添加路由的过程中,django一共提供了2个函数给开发者注册路由。
1 2 3 4 5 | from django.urls import path # 字符串路由 from django.urls import re_path # 正则路由(会把url地址看成一个正则模式与客户端的请求url地址进行正则匹配) # path和re_path 使用参数一致,仅仅在url参数和接收参数时写法不一样 |
1、路由的基本使用
例如:
1 2 3 4 5 6 7 | 1 )path:字符串路由,默认使用的是精准匹配,路径前后必须完全一致 2 )path不支持分组 3 )re_path: 正则路由 4 )r的含义:正则表达式字符串的开头字母“r”, 它告诉Python这是个原始字符串,不需要处理里面的反斜杠(转义字符) |
2、路由传参
(1)普通分组传参
路由:
视图:
(2)有名分组传参
路由:
视图:
3、路由分发
1 2 3 | from django.urls import include, path path(app01 / ', include(app01.urls' )) |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!