diff options
| -rw-r--r-- | pydis_site/apps/api/models/__init__.py | 2 | ||||
| -rw-r--r-- | pydis_site/apps/api/models/mixins.py | 12 | 
2 files changed, 13 insertions, 1 deletions
| diff --git a/pydis_site/apps/api/models/__init__.py b/pydis_site/apps/api/models/__init__.py index 644b8757..1c9e1d07 100644 --- a/pydis_site/apps/api/models/__init__.py +++ b/pydis_site/apps/api/models/__init__.py @@ -15,4 +15,4 @@ from .bot import (      User  )  from .log_entry import LogEntry -from .mixins import ModelReprMixin +from .mixins import ModelReprMixin, ModelTimestampMixin diff --git a/pydis_site/apps/api/models/mixins.py b/pydis_site/apps/api/models/mixins.py index 0540c4de..942edaa1 100644 --- a/pydis_site/apps/api/models/mixins.py +++ b/pydis_site/apps/api/models/mixins.py @@ -1,5 +1,7 @@  from operator import itemgetter +from django.db import models +  class ModelReprMixin:      """Mixin providing a `__repr__()` to display model class name and initialisation parameters.""" @@ -15,3 +17,13 @@ class ModelReprMixin:              if not attribute.startswith('_')          )          return f'<{self.__class__.__name__}({attributes})>' + + +class ModelTimestampMixin(models.Model): +    """Mixin providing created_at and updated_at fields.""" + +    created_at = models.DateTimeField(auto_now_add=True) +    updated_at = models.DateTimeField(auto_now=True) + +    class Meta: +        abstract = True | 
