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


Posted in Python onJuly 18, 2015

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

例子:

# urls.py

from django.conf.urls.defaults import *
from mysite import views

urlpatterns = patterns('',
  (r'^blog/$', views.page),
  (r'^blog/page(?P<num>\d+)/$', views.page),
)

# views.py

def page(request, num='1'):
  # Output the appropriate page of blog entries, according to num.
  # ...

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

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

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

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

Python 相关文章推荐
python 参数列表中的self 显式不等于冗余
Dec 01 Python
Python Web开发模板引擎优缺点总结
May 06 Python
用python代码做configure文件
Jul 20 Python
浅谈python对象数据的读写权限
Sep 12 Python
Python存取XML的常见方法实例分析
Mar 21 Python
Python+matplotlib+numpy绘制精美的条形统计图
Jan 02 Python
基于scrapy的redis安装和配置方法
Jun 13 Python
利用Python进行数据可视化常见的9种方法!超实用!
Jul 11 Python
解决pycharm py文件运行后停止按钮变成了灰色的问题
Nov 29 Python
Python2比较当前图片跟图库哪个图片相似的方法示例
Sep 28 Python
python+openCV对视频进行截取的实现
Nov 27 Python
我对PyTorch dataloader里的shuffle=True的理解
May 20 Python
Python的Django框架中URLconf相关的一些技巧整理
Jul 18 #Python
在Django框架中伪造捕捉到的URLconf值的方法
Jul 18 #Python
Django中传递参数到URLconf的视图函数中的方法
Jul 18 #Python
在Django的URLconf中使用命名组的方法
Jul 18 #Python
在Django的URLconf中使用多个视图前缀的方法
Jul 18 #Python
在Django的URLconf中进行函数导入的方法
Jul 18 #Python
在Django的form中使用CSS进行设计的方法
Jul 18 #Python
You might like
PHP命名空间(namespace)原理与用法详解
2019/12/11 PHP
php如何实现数据库的备份和恢复
2020/11/30 PHP
JavaScript使用setInterval()函数实现简单轮询操作的方法
2015/02/02 Javascript
JavaScript汉诺塔问题解决方法
2015/04/21 Javascript
基于Flowplayer打造一款免费的WEB视频播放器附源码
2015/09/06 Javascript
解决angular的$http.post()提交数据时后台接收不到参数值问题的方法
2015/12/10 Javascript
jQuery取得iframe中元素的常用方法详解
2016/01/14 Javascript
探讨:JavaScript ECAMScript5 新特性之get/set访问器
2016/05/05 Javascript
js 弹出虚拟键盘修改密码的简单实例
2016/10/10 Javascript
jquery select2的使用心得(推荐)
2016/12/04 Javascript
Angular2入门教程之模块和组件详解
2017/05/28 Javascript
JavaScript 跨域之POST实现方法
2018/05/07 Javascript
详解小程序退出页面时清除定时器
2019/04/28 Javascript
Vue2(三)实现子菜单展开收缩,带动画效果实现方法
2019/04/28 Javascript
基于vue-cli 路由 实现类似tab切换效果(vue 2.0)
2019/05/08 Javascript
[44:30]完美世界DOTA2联赛PWL S2 GXR vs Magma 第一场 11.25
2020/11/26 DOTA
python实现决策树、随机森林的简单原理
2018/03/26 Python
Linux 修改Python命令的方法示例
2018/12/03 Python
python2和python3实现在图片上加汉字的方法
2019/08/22 Python
Linux下通过python获取本机ip方法示例
2019/09/06 Python
使用python实现回文数的四种方法小结
2019/11/24 Python
Python 基于FIR实现Hilbert滤波器求信号包络详解
2020/02/26 Python
在django admin详情表单显示中添加自定义控件的实现
2020/03/11 Python
给keras层命名,并提取中间层输出值,保存到文档的实例
2020/05/23 Python
Python中免验证跳转到内容页的实例代码
2020/10/23 Python
大专应届生个人简历的自我评价
2013/10/15 职场文书
陈欧的广告词
2014/03/18 职场文书
请假条的格式
2014/04/11 职场文书
电子商务系毕业生自荐信
2014/05/29 职场文书
防灾减灾宣传标语
2014/10/07 职场文书
《乌鸦喝水》教学反思
2016/02/19 职场文书
《给予树》教学反思
2016/03/03 职场文书
Django实现翻页的示例代码
2021/05/24 Python
利用Python第三方库实现预测NBA比赛结果
2021/06/21 Python
Python爬虫入门案例之爬取二手房源数据
2021/10/16 Python
MySQL中TIMESTAMP类型返回日期时间数据中带有T的解决
2022/12/24 MySQL