Skip to content

Instantly share code, notes, and snippets.

@sae13
Created May 22, 2022 09:38
Show Gist options
  • Save sae13/46928a343712297206603910287b7cdd to your computer and use it in GitHub Desktop.
Save sae13/46928a343712297206603910287b7cdd to your computer and use it in GitHub Desktop.
Django Audit Model
class Audit(models.Model):
created_date = models.DateTimeField(auto_now_add=True, verbose_name=gettext('created_date'))
created_by = models.CharField(max_length=255, verbose_name=gettext('created by'))
last_modified_date = models.DateTimeField(auto_now=True, verbose_name=gettext('last modified date'))
last_modified_by = models.CharField(max_length=255, blank=True, null=True, verbose_name=gettext('last modified by'))
description = models.CharField(max_length=255, blank=True, null=True, verbose_name=gettext('description'))
# extra_json = models.JSONField(blank=True, null=True, verbose_name=gettext('extra json'))
is_deleted = models.BooleanField(default=0, verbose_name=gettext('is deleted'))
is_deactivated = models.BooleanField(default=0, verbose_name=gettext('is deactivated'))
version = models.PositiveIntegerField(default=0, verbose_name=gettext('version'))
attachment = models.FileField(upload_to=upload_to, null=True, blank=True)
@property
def j_created_date(self):
return jalali_datetime.JalaliDatetime(self.created_date).strftime('%Y-%m-%d')
@property
def j_last_modified_date(self):
return jalali_datetime.JalaliDatetime(self.last_modified_date).strftime('%Y-%m-%d')
class Meta:
abstract = True
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment