Django路由简单使用

本文详细介绍了Django中URL配置与视图函数的映射原理,通过例子展示了如何设置路径与视图的对应关系,以及如何捕获路径参数。讨论了$和^符号在URL模式中的作用,强调了它们在确保精确匹配路径中的关键地位。同时,解释了为何不使用$符号可能导致路径匹配过于宽松的问题,并提供了修复方案。
摘要由CSDN通过智能技术生成

配置路由与视图函数的映射关系
在这里插入图片描述
在这里插入图片描述
导入应用中的views.py模块,然后配置映射关系,路径time/ 对应的视图函数为year
在这里插入图片描述
打开浏览器访问网站http://127.0.0.1:8000/time/
在这里插入图片描述
urls.py中的urlpatterns是一个列表,映射原理
for item in urlpatterns:
ret = re.search(路径,item.path/url)
if ret:
执行映射的视图函数
映射的路径其实是一个正则表达式,我们可以使用正则表达式来代替路径中的内容
在这里插入图片描述

假如我们想获取路径中的某项内容,需要使用圆括号将其括起来,如图中的(\d{4}),这样的话我们再次访问原先的路径时候会报错
在这里插入图片描述
原因是因为我们需要在视图函数中接收相应的路径中的内容
在这里插入图片描述
这样我们再次访问的时候就会动态的显示路径中的内容
在这里插入图片描述
在这里插入图片描述
urls.py中urlpatterns中的路径中的$符号与^作用
假如我们把 $ 符号去掉
在这里插入图片描述
那我们在浏览器的url中输入http://127.0.0.1:8000/time/2003/addaad/ 也不会报错,照样会访问,这是因为匹配路径的时候,使用re.search(路径,视图函数) , 只要路径包含在其中,都会返回true,也会访问成功
在这里插入图片描述
加上 $ 符号可以解决这个问题,^符号也是同理
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值