Django2.0 path与Django1.x url的总结

我理解的path就是跟简单的url路由语法。那么简单的地方在哪呢?

在我写出这行代码时

path("r'^articles/2003/$',views.special_2003")
 
 

产生了以下错误

.经过查找发现path不支持正则匹配。只有这样写才是对的


 
 
  1. from django.conf.urls import url
  2. url( r'^articles/2003/$',views.special_2003)

那为什么path不可以正则呢?path有啥用?path如何写才能对?

答案是:path不是不能用正则而是要调用django.urls.re_path()函数,来使用正则。


 
 
  1. from django.urls import re_path
  2. re_path( r'^articles/2003/$',views.special_case_2003)

这是就和url的效果相同了。

那path有啥用?

在动态路由Django.url.path函数,允许使用更加简洁的语法在旧版本中如下表示:


 
 
  1. def special_200(seq,year):
  2. year = int(year)
  3. return HttpResponse(year)
  4. url( r'^articles/(?P<year>[0-9]{4})/$',views.special_2003)

而在path中可以更加简洁的表示为:


 
 
  1. from django.urls import path
  2. path( "r'articles/<int:year>/',views.special_2003")

path参数的使用方法path(/articles<str:string>/),尖括号里str代表参数类型,后者代表的参数名称

转载自[https://blog.csdn.net/qq_40760617/article/details/83067401](https://blog.csdn.net/qq_40760617/article/details/83067401)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值