Django管理的模型时间戳的自定义列表显示。
django-admin-timestamps的Python项目详细描述
在中显示可读的创建/修改日期和/或时间 django.contrib.adminchangelist,用于跟踪 创建和更新的时刻。
用法
首先,你需要一个模型来跟踪创造的时刻 修改。最简单的例子是:
from django.db import models class TimestampedItem(models.Model): created = models.DateTimeField('created', auto_now_add=True) modified = models.DateTimeField('modified', auto_now=True)
或者,如果您使用django-extensions:
from django_extensions.db.models import TimeStampedModel class TimestampedItem(TimeStampedModel): pass
现在是时候向django的管理站点注册这个模型了。
创建一个管理类,就像你通常做的那样,但是要扩展它 TimestampedAdminMixin以及您使用的任何其他基本管理类:
from django.contrib import admin from models import TimestampedItem from admintimestamps import TimestampedAdminMixin class TimestampedAdmin(TimestampedAdminMixin, admin.ModelAdmin): pass admin.site.register(TimestampedItem, TimestampedAdmin)
就这样!
配置
如果时间戳字段的名称不是created和modified 但是,例如created_at和modified_at您需要做一点 模型管理类中的配置位:
class TimestampedAdmin(TimestampedAdminMixin, admin.ModelAdmin): timestamp_fields = ('created_at', 'modified_at')
您还可以使用timestamp_fields元组仅通过 仅指定要显示的字段:
class TimestampedAdmin(TimestampedAdminMixin, admin.ModelAdmin): timestamp_fields = ('modified',)
django管理时间戳的更改日志
1.2(2014-09-29)
- 放弃对python<;2.6的支持
- 放弃对django<;1.4的支持
- 对Django 1.7的验证支持
- 增加了对Python3的支持
1.1.1(2013-07-01)
- 正确处理“无”值
1.1(2012-02-21)
- 现在可以只显示一个时间戳字段。
- 正确处理日期字段。
1.0.1(2011-10-11)
- 已修复setup.py以包含compat子包
1.0.0(2011-10-07)
- 初始版本