首页 > 代码库 > django 带参数的 url

django 带参数的 url

url就像筋络一样把django这个大框架的各个部分紧紧的连接成一个整体,所以要了解django从url开始是一个不错的方向。

一般的view template url的关系这里就不讲了,下面会详细介绍下在url中参数的传递的例子。


1.  简单的参数调用

url(r’^articles/(\d{4})/(\d{2})/$’,’news.views.month_archive’), 

对于上面的url,如果用   /articles/2005/03/  来解析,最后就会解析到view到 

news.views.month_archive(request, ’2005’, ’03’)


2. 带命名的参数调用

上面的固然简单,但是没有参数名以后看起来总是让人费解,不是一个好的编程习惯,先介绍下参数名的规则

(?P<name>pattern)

同样还是和前面一样逻辑的例子

url(r’^articles/(?P<year>\d{4})/(?P<month>\d{2})/$’,’news.views.month_archive’), 

同样用   /articles/2005/03/  来解析, 最后就会解析到

news.views.month_archive(request,year=’2005’, month=’03’) 

这样就比之前的会更明了一些


3. 对于url在template中的映射

对于1中的例子用:

{%url ’path.to.some_view’v1 v2%}

对于2 中的例子用:

{%url ’path.to.some_view’arg1=v1 arg2=v2%}


django 带参数的 url