Skip to main content

A Django app allowing the tracking of objects field in the admin site.

Project description

Tracking Fields

A Django app allowing the tracking of objects field in the admin site.


  • Django 1.11: See older versions for earlier version of Django.
  • django-cuser: Only if you want to track which user made the modifications.

Quick start

  1. Add “tracking_fields” to your INSTALLED_APPS settings.

  2. Add the tracking_fields.decorators.track decorator to your models with the fields you want to track as parameters:

    @track('test', 'm2m')
    class MyModel(models.Model):
        test = models.BooleanField('Test', default=True)
        m2m = models.ManyToManyField(SubModelTest, null=True)
  3. Your objects are now tracked. See the admin site for the tracking information.

  4. If you want to track who does the changes, please install the django-cuser app.

  5. You can also track fields of related objects:

    class MyModel(models.Model):
        test = models.BooleanField('Test', default=True)
    class MyOtherModel(models.Model):
        related = models.ForeignKey(MyModel)
  6. You can run the tests with tox (make sure to have django-cuser installed).

Upgrades from 0.1 or 1.0.1

The change to UUID is a mess to do in a migration. The migrations have thus been squashed. You can either alter your fields by hand and do a fake migration afterward or remove your tracking fields tables and run migrations again:

./ migrate --fake tracking_fields zero
./ migrate tracking_fields





  • GPLv3+


1.1.2 (2019-09-11)

  • added serialization for xworkflow StateWrapper

1.1.1 (2019-01-25)

  • Optimize admin user lookup

1.1.0 (2019-01-24)

  • Compatibility with Django 1.11 to 2.1
  • Compatibility droped for earlier versions


  • Fix unicode error in admin with Python 3.4 and django_cuser




  • Order TrackingEvent by -date




  • Include migrations in MANIFEST


  • 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.

Files for django-tracking-fields, version 1.1.2
Filename, size File type Python version Upload date Hashes
Filename, size django_tracking_fields-1.1.2-py3-none-any.whl (33.6 kB) File type Wheel Python version py3 Upload date Hashes View hashes
Filename, size django-tracking-fields-1.1.2.tar.gz (58.0 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page