在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中pip的安装与使用教程
Aug 10 Python
详解pandas安装若干异常及解决方案总结
Jan 10 Python
详解Ubuntu16.04安装Python3.7及其pip3并切换为默认版本
Feb 25 Python
python实现简单图书管理系统
Nov 22 Python
python3实现绘制二维点图
Dec 04 Python
Python中join()函数多种操作代码实例
Jan 13 Python
Python @property装饰器原理解析
Jan 22 Python
Python如何访问字符串中的值
Feb 09 Python
python模块如何查看
Jun 16 Python
基于python tkinter的点名小程序功能的实例代码
Aug 22 Python
使用python对excel表格处理的一些小功能
Jan 25 Python
python基于tkinter制作m3u8视频下载工具
Apr 24 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
vBulletin HACK----关于排版的两个HACK
2006/10/09 PHP
php file_exists 检查文件或目录是否存在的函数
2010/05/10 PHP
PHP5.5在windows安装使用memcached服务端的方法
2014/04/16 PHP
PHP+Redis 消息队列 实现高并发下注册人数统计的实例
2018/01/29 PHP
php ajax confirm 删除实例详解
2019/03/06 PHP
使用prototype.js 的时候应该特别注意的几个问题.
2007/04/12 Javascript
写入cookie的JavaScript代码库 cookieLibrary.js
2009/10/24 Javascript
Jquery下判断Id是否存在的代码
2011/01/06 Javascript
js 创建书签小工具之理论
2011/02/25 Javascript
改善用户体验的五款jQuery插件分享
2011/05/22 Javascript
js获取鼠标点击的位置实现思路及代码
2014/05/09 Javascript
javascript中数组array及string的方法总结
2014/11/28 Javascript
JS实现的自定义右键菜单实例二则
2015/09/01 Javascript
Bootstrap基本样式学习笔记之表格(2)
2016/12/07 Javascript
基于vue实现swipe轮播组件实例代码
2017/05/24 Javascript
NodeJS实现图片上传代码(Express)
2017/06/30 NodeJs
Vue2.0用户权限控制解决方案
2017/11/29 Javascript
Angular 如何使用第三方库的方法
2018/04/18 Javascript
详解jQuery-each()方法
2019/03/13 jQuery
JS面向对象编程——ES6 中class的继承用法详解
2020/03/03 Javascript
vue项目中播放rtmp视频文件流的方法
2020/09/17 Javascript
[49:20]2014 DOTA2国际邀请赛中国区预选赛5.21 CIS VS TongFu
2014/05/22 DOTA
[41:52]DOTA2-DPC中国联赛 正赛 CDEC vs Dynasty BO3 第二场 2月22日
2021/03/11 DOTA
python生成二维码的实例详解
2017/10/29 Python
python 自动去除空行的实例
2018/07/24 Python
python 剪切移动文件的实现代码
2018/08/02 Python
python使用scrapy发送post请求的坑
2018/09/04 Python
Python数据类型之Tuple元组实例详解
2019/05/08 Python
Python正则表达式匹配和提取IP地址
2019/06/06 Python
Python3使用PySynth制作音乐的方法
2019/09/09 Python
用CSS3和table标签实现一个圆形轨迹的动画的示例代码
2019/01/17 HTML / CSS
美国生日蛋糕店:Bake Me A Wish!
2017/02/08 全球购物
俄罗斯在线手表和珠宝商店:AllTime
2019/09/28 全球购物
规划编制实施方案
2014/03/15 职场文书
咖啡店创业计划书
2014/08/15 职场文书
Golang数据类型和相互转换
2022/04/12 Golang