django-reversion documentation

Getting started with django-reversion

To install django-reversion, follow these steps:

  1. Install with pip: pip install django-reversion.
  2. Add 'reversion' to INSTALLED_APPS.
  3. Run manage.py migrate.

If you have installed anything other than the latest version of Django, please check the compatible Django versions page before installing django-reversion.

There are a number of alternative methods you can use when installing django-reversion. Please check the installation methods page for more information.

Admin integration

django-reversion can be used to add a powerful rollback and recovery facility to your admin site. To enable this, simply register your models with a subclass of reversion.VersionAdmin:

from reversion.admin import VersionAdmin

class YourModelAdmin(VersionAdmin):

    pass

admin.site.register(YourModel, YourModelAdmin)

Whenever you register a model with the VersionAdmin class, be sure to run the ./manage.py createinitialrevisions command to populate the version database with an initial set of model data. Depending on the number of rows in your database, this command could take a while to execute.

For more information about admin integration, please read the admin integration documentation.

Low Level API

You can use django-reversion’s API to build powerful version-controlled views. For more information, please read the low level API documentation.