Django之URL调度与参数传递

这篇博客的所有知识都是从Django的URLconf所得,这篇博客只是一个重点列举。

URLconf

URL配置本质是一个网站的导航流(navigate flow),将网站各页面的url和对应的控制器连接起来,从而通过控制器实现model和view的调度,将整个网站的各个模块联结起来。首先从一段代码开始:

from django.conf.urls import url 
from . import views

urlpatterns[      
url(r'^articles/2003/$',views.special_case_2003),
url(r'^articles/([0-9]){4}/$',views.year_archive),
]

当请求的url匹配urlpatterns中的某一个pattern时,便会call对应的控制函数,从而调用对应的视图层和模型,将整个网站各部分结合起来。


URL传参

Django的独特之处在于可以结合正则表达式让URL自身就是参数,如下代码:

urlpatterns = [
    url(r'^articles/(?P<year>[0-9]{4})/$', views.year_archive),
]

其中(?Ppattern)表示对pattern所匹配的字符串赋值给名为name的变量,这样,对于控制函数year_archive就可以使用name变量。

扩展:下面对?在正则表达式的常用用法

1. 表示非贪婪匹配
贪婪匹配&#x

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值