Source code for meeting.common.models
""" Something here """
from uuid import uuid4
from django.db import models
from django.utils.translation import ugettext_lazy as _
from meeting.common.managers import BaseManager
__all__ = ['NamedBaseModel']
class BaseModel(models.Model):
objects = BaseManager(this_year_lookup='created_on__year')
created_on = models.DateTimeField(auto_now_add=True,
verbose_name=_('Criado em'))
modified_on = models.DateTimeField(auto_now=True,
verbose_name=_('Modificado em '))
class Meta:
abstract = True
ordering = ('created_on', )
[docs]class NamedBaseModel(BaseModel):
"""Named Something"""
name = models.CharField(
max_length=100,
verbose_name=_('Nome'),
)
class Meta:
abstract = True
def __str__(self):
return self.name
class PersonModel(models.Model):
name = models.CharField(
max_length=100,
verbose_name=_('Nome'),
)
document = models.CharField(
max_length=100,
verbose_name=_('Documento'),
)
note = models.TextField(
blank=True,
verbose_name=_('Nota')
)
class Meta:
abstract = True
def __str__(self):
return self.name
class RawUUIDModel(models.Model):
uuid = models.CharField(
blank=True,
db_index=True,
null=True,
max_length=36,
unique=True,
editable=False,
verbose_name=_('QRCode'),
)
class Meta:
abstract = True
def __str__(self):
return self.uuid
def save(self, *args, **kwargs):
if not self.uuid:
self.uuid = str(uuid4())
return super().save(*args, **kwargs)