Add model fields to track creation and modification dates, users and more on save.
Project description
django-audit-fields
VERSION
<=0.3.3 (DJ 3.1, py 3.7, 3.8)
>=0.3.4 (DJ 3.2+, py 3.9+)
Installation
pip install django_audit_fields
Add both django_audit_fields and django_revision to INSTALLED_APPS
INSTALLED_APPS = [
"...",
"django_revision.apps.AppConfig",
"django_audit_fields.apps.AppConfig",
"..."]
Usage
Add model fields to track creation and modification dates, users and more on save.
Declare your model using AuditModelMixin
from django_audit_fields.model_mixins import AuditModelMixin
class MyModel(AuditModelMixin, models.Model):
...
class Meta(AuditModelMixin.Meta):
pass
Preferably, use a UUID as primary key by declaring your model using AuditUuidModelMixin
from django_audit_fields.model_mixins import AuditUuidModelMixin
class MyModel(AuditUuidModelMixin, models.Model):
...
class Meta(AuditUuidModelMixin.Meta)
pass
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:
from simple_history.models import HistoricalRecords
class MyModel(AuditUuidModelMixin, models.Model):
...
history = HistoricalRecords()
Notes
User created and modified fields behave as follows:
created is only set on pre-save add
modified is always updated
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for django-audit-fields-0.3.7.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 43ac141df1f9018b2cfd2cfcd717e6a3e211e06a4ebbddc2eb13bc041c2d4a3c |
|
MD5 | 007cbb3ccd47820ef81d43defe56aab7 |
|
BLAKE2b-256 | eaa33b9695bc610ac97cf7edc2698a14cb929cdf826375d4d3d42d1e6ad1fd14 |
Hashes for django_audit_fields-0.3.7-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cd177335895342f2e2e5cd5cfbc157a61c8a9d87d7459f109d3f5f587ebbe64f |
|
MD5 | 84a1bc38826815da06b8d6f99ca29dbe |
|
BLAKE2b-256 | 3f35cf2731d02f2e7d236a0da25eb56bf9a2a33740c9c540ab4228ee48813876 |