Skip to main content

Custom list display of model timestamps for Django Admin.

Project description

Show human readable created/modified dates and/or times in the django.contrib.admin changelist for models that track the moment of creation and updates.

Usage

First you will need to have a model that tracks the moment of creation and modification. The barebones example for that is:

from django.db import models

class TimestampedItem(models.Model):
    created = models.DateTimeField('created', auto_now_add=True)
    modified = models.DateTimeField('modified', auto_now=True)

Or, if you are using django-extensions:

from django_extensions.db.models import TimeStampedModel

class TimestampedItem(TimeStampedModel):
    pass

Now it’s time to register this model with Django’s admin site.

Create a admin class, just like you’d usually do, but make it extend TimestampedAdminMixin as well as any other base admin class you use:

from django.contrib import admin
from models import TimestampedItem
from admintimestamps import TimestampedAdminMixin

class TimestampedAdmin(TimestampedAdminMixin, admin.ModelAdmin):
    pass

admin.site.register(TimestampedItem, TimestampedAdmin)

That’s it!

https://bitbucket.org/jaap3/django-admin-timestamps/raw/tip/img/screenshot.png

Configuration

If the names of you timestamp fields aren’t created and modified but for example created_at and modified_at you’ll need to do a tiny bit of configuration in the model admin class:

class TimestampedAdmin(TimestampedAdminMixin, admin.ModelAdmin):
    timestamp_fields = ('created_at', 'modified_at')

You can also use the timestamp_fields tuple to only show one field by only specifying the field you want to show:

class TimestampedAdmin(TimestampedAdminMixin, admin.ModelAdmin):
    timestamp_fields = ('modified',)

Changelog for django-admin-timestamps

1.2 (2014-09-29)

  • Dropped support for Python < 2.6

  • Dropped support for Django < 1.4

  • Verified support for up to Django 1.7

  • Added support for Python 3

1.1.1 (2013-07-01)

  • Handle None values properly

1.1 (2012-02-21)

  • Just displaying one timestamp field is now possible.

  • Proper handling of date fields.

1.0.1 (2011-10-11)

  • Fixed setup.py to include the compat subpackage

1.0.0 (2011-10-07)

  • Initial release

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django-admin-timestamps-1.2.zip (16.8 kB view details)

Uploaded Source

File details

Details for the file django-admin-timestamps-1.2.zip.

File metadata

File hashes

Hashes for django-admin-timestamps-1.2.zip
Algorithm Hash digest
SHA256 d34b4679fd70c6d22d325e8695b503fccefa54e690e19a884025e1b5d80ac495
MD5 cd5d9fc9850210c51fbedaafd013e713
BLAKE2b-256 1a49a9b6c78262a7497ec96e058bfbf1a5970371ff146b14cbf1ce5f49726aee

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page