django-audit-fields

Add model fields to track creation and modification dates, users and more on save.


Keywords
django, Edc, audit, field, clinicedc, clinical, trials
Licenses
xpp/MIT-feh
Install
pip install django-audit-fields==0.3.17

Documentation

pypi actions codecov downloads

django-audit-fields

VERSION

  • <=0.3.3 (DJ 3.1, py 3.7, 3.8)
  • >=0.3.4 (DJ 3.2+, py 3.9+)
  • >=0.3.14 (DJ4.2, py3.11) includes locale

Installation

Add both django_audit_fields and django_revision to INSTALLED_APPS

Usage

Add model fields to track creation and modification dates, users and more on save.

Declare your model using AuditModelMixin

Preferably, use a UUID as primary key by declaring your model using AuditUuidModelMixin

The model mixins AuditModelMixin and AuditUuidModelMixin:

  • add audit fields (created, modified, user_created, user_modified, hostname_created, hostname_modified);

The model mixin AuditUuidModelMixin also

  • sets the id fields to a UUIDField instead of an integer;

Most models require an audit trail. If so, add the HistoricalRecord model manager from django-simple-history:

Notes

User created and modified fields behave as follows:

  • created is only set on pre-save add
  • modified is always updated