首页 > 编程 > Python > 正文

Django的URLconf中使用缺省视图参数的方法

2020-01-04 18:02:14
字体:
来源:转载
供稿:网友
这篇文章主要介绍了Django的URLconf中使用缺省视图参数的方法,Django是最著名的Python的web开发框架,需要的朋友可以参考下
 

一个方便的特性是你可以给一个视图指定默认的参数。 这样,当没有给这个参数赋值的时候将会使用默认的值。

例子:
 

  1. # urls.py 
  2.  
  3. from django.conf.urls.defaults import * 
  4. from mysite import views 
  5.  
  6. urlpatterns = patterns(''
  7.   (r'^blog/$', views.page), 
  8.   (r'^blog/page(?P<num>/d+)/$', views.page), 
  9.  
  10. # views.py 
  11.  
  12. def page(request, num='1'): 
  13.   # Output the appropriate page of blog entries, according to num. 
  14.   # ... 
?

在这里,两个URL表达式都指向了同一个视图 views.page ,但是第一个表达式没有传递任何参数。 如果匹配到了第一个样式, page() 函数将会对参数 num 使用默认值 "1" ,如果第二个表达式匹配成功, page() 函数将使用正则表达式传递过来的num的值。

(注:我们已经注意到设置默认参数值是字符串 `` ‘1'`` ,不是整数`` 1`` 。为了保持一致,因为捕捉给`` num`` 的值总是字符串。

就像前面解释的一样,这种技术与配置选项的联用是很普遍的。 以下这个例子比提供视图配置选项一节中的例子有些许的改进。
 

  1. def my_view(request, template_name='mysite/my_view.html'): 
  2.   var = do_something() 
  3.   return render_to_response(template_name, {'var'var}) 
?

 

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表