Django开发运维后台(四):几个ArchiveView的使用
来源:互联网 发布:淘宝买药安全吗 编辑:程序博客网 时间:2024/05/21 00:50
运维笔记-51CTO技术博客
TodayArchiveView, YearArchiveView, MonthArchiveView, DayArchiveView这类视图都是用来显示数据,用法也差不多,重点在于URL而已:
TodayArchiveView:搜索今天的数据
YearArchiveView:搜索指定年份的数据
MonthArchiveView:搜索指定月份的数据
DayArchiveView:搜索指定日的数据
建一张表来练习练习,用于存放检查数据库备份情况的Backup表
models.py
class Backup(models.Model): server = models.ForeignKey(ServerList) checkdate = models.DateField() admin_statistics_status = models.IntegerField() game_status = models.IntegerField() gm_status = models.IntegerField() media_status = models.IntegerField() operation_status = models.IntegerField() runtime = models.DateTimeField()
views.py
class BackupTodayArchive(TodayArchiveView): allow_empty = True allow_future = False context_object_name = 'list' template_name = 'backuplist.jinja.html' http_method_names = [u'get',] model = Backup date_field = 'checkdate' paginate_by = 50 make_object_list = Trueclass BackupYearArchive(YearArchiveView): allow_empty = True allow_future = False context_object_name = 'list' template_name = 'backuplist.jinja.html' http_method_names = [u'get',] model = Backup date_field = 'checkdate' year_format = '%Y' paginate_by = 50 make_object_list = Trueclass BackupMonthArchive(MonthArchiveView): allow_empty = True allow_future = False context_object_name = 'list' template_name = 'backuplist.jinja.html' http_method_names = [u'get',] model = Backup date_field = 'checkdate' year_format = '%Y' month_format = '%m' paginate_by = 50 make_object_list = Trueclass BackupDayArchive(DayArchiveView): allow_empty = True allow_future = False context_object_name = 'list' template_name = 'backuplist.jinja.html' http_method_names = [u'get',] model = Backup date_field = 'checkdate' year_format = '%Y' month_format = '%m' day_format = '%d' paginate_by = 50 make_object_list = True
date_field:这个参数要指定model里面的日期型字段,是视图按这个字段过滤结果的
year_format month_format day_format:这几个是匹配URL捕捉的格式
make_object_list:我也不知道啥意思
urls.py
url(r'^backuplist/$', BackupTodayArchive.as_view(), name='backuplist'), url(r'backuplist/(?P<year>\d{4})/$', BackupYearArchive.as_view()), url(r'backuplist/(?P<year>\d{4})/(?P<month>\d{2})/$', BackupMonthArchive.as_view()), url(r'backuplist/(?P<year>\d{4})/(?P<month>\d{2})/(?P<day>\d{2})/$', BackupDayArchive.as_view()),
这样就完成一个按日期显示内容的功能:
显示当天数据: http://127.0.0.1/saadmin/backuplist/
显示2014年数据: http://127.0.0.1/saadmin/backuplist/ 2014/
显示2014年7月份的数据: http://127.0.0.1/saadmin/backuplist/ 2014/07/
显示2014年7月5日的数据: http://127.0.0.1/saadmin/backuplist/ 2014/07/05/
感觉挺好玩的,这几个视图。。
0 0
- Django开发运维后台(四):几个ArchiveView的使用
- django开发(5)后台开发
- django开发环境部署四(四)
- 使用moy快速开发后台管理系统(四)
- 使用moy快速开发后台管理系统(四)
- 使用moy快速开发后台管理系统(四)
- 使用moy快速开发后台管理系统(四)
- 使用moy快速开发后台管理系统(四)
- 使用moy快速开发后台管理系统(四)
- 使用moy快速开发后台管理系统(四)
- 使用moy快速开发后台管理系统(四)
- Django-- admin后台管理模块的使用
- Django(四)后台管理及Field参数
- Django开发(四)——Django的模板
- 网站开发(四)后台的页面导入
- Django技术详解(四)开发template
- 后台开发学习(四)HTML5表单的使用PHP环境搭载和HTML表单的提交
- Django实现的一个简单的后台开发
- 第十周项目求两数的最大公约数
- 图表控件FlowChart.NET详细介绍及免费下载地址
- 从AlertView例解设置view背景的几种方法
- AMQP协议
- JS控制只能输入数字值
- Django开发运维后台(四):几个ArchiveView的使用
- 获取UUID
- mysql用户管理 & 存储过程
- poj 1094 Sorting It All Out (拓扑排序)
- LeetCode:Convert Sorted Array to Binary Search Tree
- 连接建立和连接断开图解
- PHP短文本匹配的排序算法
- MTK 移植笔记
- 参数化SQL语句