models.py 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. # -*- coding: utf-8 -*-
  2. from django.db import models
  3. from django.contrib.auth.models import User
  4. class CrudModel(models.Model):
  5. class Meta:
  6. abstract = True
  7. class Application(models.Model):
  8. name = models.CharField(max_length=60, unique=True, verbose_name=u"nome")
  9. python_name = models.CharField(max_length=255, unique=True, verbose_name=u"Nome no Python")
  10. managers = models.ManyToManyField(User, verbose_name=u"gestores", related_name='managed_applications')
  11. url = models.CharField(max_length=255, unique=True)
  12. enabled = models.BooleanField(default=True, verbose_name=u"ativa")
  13. def __unicode__(self):
  14. return self.name
  15. url_name = 'aplicacao'
  16. class Meta:
  17. verbose_name = u'aplicação'
  18. verbose_name_plural = u'aplicações'
  19. class Profile(models.Model):
  20. id = models.AutoField(primary_key=True)
  21. application = models.ForeignKey(Application, verbose_name=u'aplicação')
  22. name = models.CharField(max_length=60, verbose_name=u'nome')
  23. description = models.TextField(verbose_name=u'descrição')
  24. users = models.ManyToManyField(User, verbose_name=u'usuários', blank=True)
  25. def __unicode__(self):
  26. return self.name
  27. class Meta:
  28. verbose_name = u'perfil'
  29. verbose_name_plural = u'perfis'