#encoding:utf-8 from django.db import models # Create your models here. grados=( ('5to','Quinto Grado'), ('6to','Sexto Grado'), ) turno=( ('Matutino','Matutino'), ('Vespertino','Vespertino'), ) class Lugar(models.Model): padre=models.ForeignKey('self', blank= True, null=True) nombre = models.CharField('Localidad', max_length=50) def __unicode__(self): return self.nombre def nosecomollamarle(self): if self.padre == None: return self.nombre else: return u'%s - %s' % (self.padre, self.nombre) class Meta: ordering = ['-padre__nombre', 'nombre'] verbose_name='Lugar' verbose_name_plural='Lugares' unique_together = ["padre","nombre"] class Direccion(models.Model): calle=models.CharField('Calle ', max_length=150) numero=models.IntegerField('Numero Exterior ') numero_interior= models.IntegerField('Numero Interior') manzana = models.CharField('Manzana',max_length = 50) lote = models.CharField('Lote', max_length = 50) colonia = models.CharField('Colonia',max_length = 150) localidad=models.ForeignKey(Lugar, verbose_name="Localidad") codigo_p = models.CharField('Codigo Postal',max_length = 5) def __unicode__(self): return u'%s - %s' % ( self.calle, self.numero ) class Meta: verbose_name='Direccion' verbose_name_plural='Direcciones' class Persona(models.Model): curp = models.CharField('Curp', max_length = 20) nombre=models.CharField('Nombre ', max_length=150) apellido_paterno=models.CharField('Apellido Paterno', max_length=50) apellido_materno=models.CharField('Apellido Materno', max_length=50) # direccion=models.ForeignKey(Direccion, verbose_name="Direccion") perfil=models.ForeignKey('registro.Perfil', verbose_name="Perfil") # estatus=models.ForeignKey('registro.Estatus', verbose_name="Estatus ") def __unicode__(self): return u'%s %s %s' % ( self.nombre, self.apellido_paterno, self.apellido_materno ) def nombre_completo(self): return u'%s %s %s' % ( self.nombre, self.apellido_paterno, self.apellido_materno ) def nombre_por_apellidos(self): return u'%s %s, %s' % ( self.apellido_paterno, self.apellido_materno, self.nombre) class Meta: ordering = ['apellido_paterno', 'apellido_materno', 'nombre'] class Escuela(models.Model): clave=models.CharField('Clave de la Escuela', max_length=50) nombre=models.CharField('Nombre de la Escuela', max_length=150) zona_escolar= models.CharField('Zona Escolar',max_length = 10) no_sector = models.CharField('NO. Sector Escolar', max_length = 10) direccion=models.ForeignKey(Direccion, verbose_name="dirección") estatus=models.ForeignKey('registro.Estatus', verbose_name="Estatus de la escuela") # director=models.ForeignKey(Persona, verbose_name="Director") def __unicode__(self): return (self.nombre) class Meta: verbose_name='Escuela' verbose_name_plural='Escuelas' class Escolaridad(models.Model): escuela=models.ForeignKey(Escuela, verbose_name="Escuela") persona=models.ForeignKey(Persona, verbose_name="Alumno") grado=models.CharField(choices=grados, max_length=3) grupo = models.CharField('Grupo', max_length = 10) turno = models.CharField(choices = turno, max_length = 20) def __unicode__(self): return (self.escuela.nombre) class Meta: verbose_name = 'Escolaridad' verbose_name_plural = 'Escolaridades' ordering = ['escuela__nombre', 'turno', 'grupo', 'grado', 'persona__apellido_paterno', 'persona__apellido_materno', 'persona__nombre'] class Asignacion(models.Model): persona=models.ForeignKey(Persona, verbose_name="Alumno") equipo=models.ForeignKey('registro.Equipo', verbose_name="Equipo") estatus=models.ForeignKey('registro.Estatus', verbose_name="Estatus de la Asignacion") def __unicode__(self): return (self.persona.nombre) class Meta: verbose_name='Asignacion' verbose_name_plural='Asignaciones'