Django基础教程(四十六)Django URL设计:Django世界里那位默默无闻,却掌控着所有流量生杀大权的“交通总指挥”——URL配置

一、初识URLconf:Django的“交通指挥中心”

想象一下,你开了一家叫做“我的博客”的超级公司(你的Web项目)。用户(HTTP请求)从四面八方涌来,说要找“张三的文章”(/article/zhangsan/),或者要看“最新的段子”(/jokes/latest/)。

这时候,谁来决定把用户带到正确的办公室(视图函数)去?就是你项目里的 urls.py 这个文件!它的大名叫做 URL配置(URLconf),它就是你们公司的“前台总机”兼“交通总指挥”。

这个总指挥的工作流程简单得令人发指:

  1. 来客了! 一个HTTP请求带着它的路径(比如 /about/)来到服务器。
  2. 总机查表! Django核心拿着这个路径,跑到 urls.py 这个“路由表”里,从上到下一行一行地比对。
  3. 匹配成功! 找到了对应的 path,比如 path('about/', views.about_view)
  4. 呼叫办公室! 总指挥立刻拿起电话(调用)views.about_view 这个视图函数:“嘿,来活了,是关于我们公司的介绍!”
  5. 办公室接客! 视图函数开始工作,处理业务逻辑,最后返回一个漂亮的HTML页面(HttpResponse)给用户。

看,整个过程清晰明了。所以,我们的核心任务就是:写好这张“路由表”!

二、核心武器:path()re_path(),你的左右护法

在Django 2.0之后,两位得力干将闪亮登场,它们都住在 django.urls 这个模块里。

1. path(): intuitive,我的超人!

path() 是咱们的“常规武器”,90%的场景都用它。它的语法简单到哭:

path(route, view, kwargs=None, name=None)
  • route: 一个字符串,用来匹配URL路径。注意:它不匹配GET或POST参数(即?xxx=yyy那部分)
  • view: 遇到匹配的路径时,要调用的那个视图函数。直接写函数名,别加括号!
  • kwargs: 可选的,一个字典,可以传递额外的参数给视图函数(用得少)。
  • name超级重要的功能! 给这个URL起个独一无二的小名,后面会讲到它的妙用。

举个栗子 🌰

# 在 urls.py 里
from django.urls import path
from . import views  # 从当前目录导入views模块

urlpatterns = [
    path('', views.home_page, name='home'),  # 首页:http://127.0.0.1:8000/
    path('about/', views.about_us, name='about'),  # 关于页面
    path('articles/<int:article_id>/', views.article_detail, name='article_detail'),
]

重点来了!看第三行:'articles/<int:article_id>/'。这里的 <int:article_id> 就是 路径转换器,是 path() 的大杀器!

  • < > 尖括号表示要从这里捕获一个
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

值引力

持续创作,多谢支持!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值