在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模块包中__init__.py文件功能分析
Jun 14 Python
Python 3.x 连接数据库示例(pymysql 方式)
Jan 19 Python
Python实现可获取网易页面所有文本信息的网易网络爬虫功能示例
Jan 15 Python
Python发送邮件测试报告操作实例详解
Dec 08 Python
python矩阵的转置和逆转实例
Dec 12 Python
解决pycharm启动后总是不停的updating indices...indexing的问题
Nov 27 Python
关于Python中定制类的比较运算实例
Dec 19 Python
python路径的写法及目录的获取方式
Dec 26 Python
解决pycharm不能自动补全第三方库的函数和属性问题
Mar 12 Python
Python中用xlwt制作表格实例讲解
Nov 05 Python
Python 如何实现文件自动去重
Jun 02 Python
python实现简易自习室座位预约系统
Jun 30 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
二十行语句实现从Excel到mysql的转化
2006/10/09 PHP
php中计算程序运行时间的类代码
2012/11/03 PHP
php class中public,private,protected的区别以及实例分析
2013/06/18 PHP
PHP移动文件指针ftell()、fseek()、rewind()函数总结
2014/11/18 PHP
初识laravel5
2015/03/02 PHP
将函数的实际参数转换成数组的方法
2010/01/25 Javascript
jQuery.each()用法分享
2012/07/31 Javascript
JS实现可改变列宽的table实例
2013/07/02 Javascript
DVA框架统一处理所有页面的loading状态
2017/08/25 Javascript
Vue中v-for的数据分组实例
2018/03/07 Javascript
vue 实现边输入边搜索功能的实例讲解
2018/09/16 Javascript
react 组件传值的三种方法
2019/06/03 Javascript
Vue使用lodop实现打印小结
2019/07/06 Javascript
[15:35]教你分分钟做大人:天怒法师
2014/10/30 DOTA
[53:38]OG vs LGD 2018国际邀请赛淘汰赛BO3 第三场 8.26
2018/08/30 DOTA
举例讲解Python设计模式编程中对抽象工厂模式的运用
2016/03/02 Python
Python 正则表达式入门(中级篇)
2016/12/07 Python
Python脚本实现自动将数据库备份到 Dropbox
2017/02/06 Python
Python 装饰器深入理解
2017/03/16 Python
浅谈Matplotlib简介和pyplot的简单使用——文本标注和箭头
2018/01/09 Python
Python+tkinter模拟“记住我”自动登录实例代码
2018/01/16 Python
Python中一行和多行import模块问题
2018/04/01 Python
Tensorflow中使用tfrecord方式读取数据的方法
2018/06/19 Python
Python列表切片操作实例总结
2019/02/19 Python
Python根据当前日期取去年同星期日期
2019/04/14 Python
python Pandas如何对数据集随机抽样
2019/07/29 Python
python 将视频 通过视频帧转换成时间实例
2020/04/23 Python
完美解决Django2.0中models下的ForeignKey()问题
2020/05/19 Python
python 如何设置守护进程
2020/10/29 Python
python+excel接口自动化获取token并作为请求参数进行传参操作
2020/11/10 Python
python读取图片颜色值并生成excel像素画的方法实例
2021/02/19 Python
介绍一下Java的安全机制
2012/06/28 面试题
小学教师求职信范文
2015/03/20 职场文书
2016年秋季运动会加油稿
2015/12/21 职场文书
党员公开承诺书(2016最新版)
2016/03/24 职场文书
HTML静态页面获取url参数和UserAgent的实现
2022/08/05 HTML / CSS