34 lines
757 B
Python
34 lines
757 B
Python
import uuid
|
|
|
|
from django.db import models
|
|
|
|
|
|
class UUIDModel(models.Model):
|
|
id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
|
|
|
|
class Meta:
|
|
abstract = True
|
|
|
|
|
|
class TimeStampedModel(UUIDModel):
|
|
created_at = models.DateTimeField(auto_now_add=True)
|
|
updated_at = models.DateTimeField(auto_now=True)
|
|
|
|
class Meta:
|
|
abstract = True
|
|
|
|
|
|
class TeamOwnedModel(TimeStampedModel):
|
|
team = models.ForeignKey("accounts.Team", on_delete=models.CASCADE, related_name="%(class)s_set")
|
|
created_by = models.ForeignKey(
|
|
"accounts.User",
|
|
on_delete=models.SET_NULL,
|
|
null=True,
|
|
blank=True,
|
|
related_name="created_%(class)s_set",
|
|
)
|
|
|
|
class Meta:
|
|
abstract = True
|
|
|