在Python的Django框架中显示对象子集的方法


Posted in Python onJuly 21, 2015

现在让我们来仔细看看这个 queryset 。 大多数通用视图有一个queryset参数,这个参数告诉视图要显示对象的集合。

举一个简单的例子,我们打算对书籍列表按出版日期排序,最近的排在最前:

book_info = {
  'queryset': Book.objects.order_by('-publication_date'),
}

urlpatterns = patterns('',
  (r'^publishers/$', list_detail.object_list, publisher_info),
  **(r'^books/$', list_detail.object_list, book_info),**
)

这是一个相当简单的例子,但是很说明问题。 当然,你通常还想做比重新排序更多的事。 如果你想要呈现某个特定出版商出版的所有书籍列表,你可以使用同样的技术:

**apress_books = {**
  **'queryset': Book.objects.filter(publisher__name='Apress Publishing'),**
  **'template_name': 'books/apress_list.html'**
**}**

urlpatterns = patterns('',
  (r'^publishers/$', list_detail.object_list, publisher_info),
  **(r'^books/apress/$', list_detail.object_list, apress_books),**
)

注意 在使用一个过滤的 queryset 的同时,我们还使用了一个自定义的模板名称。 如果我们不这么做,通用视图就会用以前的模板,这可能不是我们想要的结果。

同样要注意的是这并不是一个处理出版商相关书籍的最好方法。 如果我们想要添加另一个 出版商页面,我们就得在URL配置中写URL配置,如果有很多的出版商,这个方法就不能 接受了。

Python 相关文章推荐
从零学python系列之数据处理编程实例(二)
May 22 Python
Python异常学习笔记
Feb 03 Python
用Python实现服务器中只重载被修改的进程的方法
Apr 30 Python
Python 文件管理实例详解
Nov 10 Python
python爬虫入门教程--HTML文本的解析库BeautifulSoup(四)
May 25 Python
python虚拟环境virtualenv的使用教程
Oct 20 Python
python网络爬虫之如何伪装逃过反爬虫程序的方法
Nov 23 Python
Python机器学习之决策树算法实例详解
Dec 06 Python
Opencv+Python 色彩通道拆分及合并的示例
Dec 08 Python
Pytorch 的损失函数Loss function使用详解
Jan 02 Python
TensorFlow2.X结合OpenCV 实现手势识别功能
Apr 08 Python
python设置中文界面实例方法
Oct 27 Python
在Django的通用视图中处理Context的方法
Jul 21 #Python
Django框架中的对象列表视图使用示例
Jul 21 #Python
在Python的Django框架中使用通用视图的方法
Jul 21 #Python
在Django的模型中执行原始SQL查询的方法
Jul 21 #Python
在Django的模型中添加自定义方法的示例
Jul 21 #Python
详解Python的Django框架中Manager方法的使用
Jul 21 #Python
通过数据库对Django进行删除字段和删除模型的操作
Jul 21 #Python
You might like
使用数据库保存session的方法
2006/10/09 PHP
应用开发中涉及到的css和php笔记分享
2011/08/02 PHP
基于PHP编程注意事项的小结
2013/04/27 PHP
PHP执行批量mysql语句的解决方法
2013/05/02 PHP
CI框架中类的自动加载问题分析
2016/11/21 PHP
Yii2.0建立公共方法简单示例
2019/01/29 PHP
共享自己写一个框架DreamScript
2007/01/20 Javascript
js中的push和join方法使用介绍
2013/10/08 Javascript
JavaScript检测实例属性, 原型属性
2015/02/04 Javascript
Bootstrap实现带暂停功能的轮播组件(推荐)
2016/11/25 Javascript
JS作用域闭包、预解释和this关键字综合实例解析
2016/12/16 Javascript
使用bat打开多个cmd窗口执行gulp、node
2017/02/17 Javascript
js实现股票实时刷新数据案例
2017/05/14 Javascript
详解基于Vue2.0实现的移动端弹窗(Alert, Confirm, Toast)组件
2018/08/02 Javascript
使用ng-packagr打包Angular的方法示例
2018/09/21 Javascript
解决vue项目nginx部署到非根目录下刷新空白的问题
2018/09/27 Javascript
Python学习笔记之os模块使用总结
2014/11/03 Python
Python中设置变量作为默认值时容易遇到的错误
2015/04/03 Python
python实现根据主机名字获得所有ip地址的方法
2015/06/28 Python
深入解析Python中的变量和赋值运算符
2015/10/12 Python
使用python爬虫实现网络股票信息爬取的demo
2018/01/05 Python
Django添加feeds功能的示例
2018/08/07 Python
Python装饰器限制函数运行时间超时则退出执行
2019/04/09 Python
Python PyQt5 Pycharm 环境搭建及配置详解(图文教程)
2019/07/16 Python
Python 3.8 新功能大揭秘【新手必学】
2020/02/05 Python
python基于爬虫+django,打造个性化API接口
2021/01/21 Python
基本款天堂:Everlane
2017/05/13 全球购物
Spartoo比利时:欧洲时尚购物网站
2017/12/06 全球购物
美国在线艺术商店:HandmadePiece
2020/11/06 全球购物
医务人员竞聘职务自我评价分享
2013/11/08 职场文书
企业总经理职责
2014/02/02 职场文书
小学庆六一活动总结
2014/08/28 职场文书
上班时间打瞌睡检讨书
2014/09/26 职场文书
装饰施工员岗位职责
2015/04/11 职场文书
2015年信息宣传工作总结
2015/05/26 职场文书
微信小程序APP的事件绑定以及传递参数时的冒泡和捕获
2022/04/19 Javascript