Filter initial values of related models

0

I have the following model in Django:

class Employee(models.Model):
code = models.CharField(max_length=10, verbose_name='Codigo Empleado', default='N/A')
name = models.CharField(max_length=50, verbose_name='Nombre')
firstname = models.CharField(max_length=50, verbose_name='Apellido Paterno')
lastname = models.CharField(max_length=50, verbose_name='Apellido Materno')
bdate = models.DateField(verbose_name='Fecha de Nacimiento', null=True, blank=True)
nacionality = models.CharField(verbose_name='Nacionalidad', max_length=50, null=True, blank=True)
sex = models.CharField(verbose_name='Sexo', max_length=1, choices=SEX_CHOICES, null=True, blank=True)
civil = models.CharField(verbose_name='Estado Civil', max_length=1, choices=CIVIL_STATUS_CHOICES, null=True, blank=True)
children = models.PositiveIntegerField(verbose_name='Numero de Hijos', null=True, blank=True)
in_date = models.DateField(verbose_name='Fecha de Ingreso', null=True, blank=True)
curp = models.CharField(verbose_name='CURP', max_length=18, null=True, blank=True)
rfc = models.CharField(verbose_name='RFC', max_length=18, null=True, blank=True)
NSS = models.CharField(verbose_name='NSS', max_length=18, null=True, blank=True)
address = models.CharField(verbose_name='Domicilio', max_length=255, null=True, blank=True)
email = models.EmailField(max_length=100, verbose_name='Correo Electronico', null=True, blank=True)
position = models.ForeignKey(Position, verbose_name='Puesto', on_delete=models.PROTECT, null=True, blank=True)
area = models.ForeignKey(Area, verbose_name='Departamento', on_delete=models.PROTECT, null=True, blank=True)
dependence = models.ForeignKey(Dependence, verbose_name='Dependencia', on_delete=models.PROTECT, null=True, blank=True)
level = models.ForeignKey(Group, verbose_name='Nivel de usuario', on_delete=models.PROTECT, null=True, blank=True)
photo = models.ImageField(verbose_name='Foto', upload_to='perfiles', null=True, blank=True)
contract = models.ForeignKey(Contract, verbose_name='Contrato', on_delete=models.PROTECT, null=True, blank=True)
wage = models.DecimalField(verbose_name='Sueldo', decimal_places=2, max_digits=10, null=True, blank=True)
academic = models.CharField(verbose_name='Grado de Estudios', max_length=100, null=True, blank=True)
status = models.BooleanField(default=True, verbose_name='Activo')
created = models.DateTimeField(auto_now_add=True, verbose_name='Creación')
updated = models.DateTimeField(auto_now=True, verbose_name='Edición')

class Meta:
    verbose_name = 'Empleado'
    verbose_name_plural = 'Empleados'
    ordering = ['code']

def __str__(self):
    return (self.firstname + ' ' + self.lastname + ', ' + self.name).upper()

For which, I have the following related model:

class Position(models.Model):
name = models.CharField(max_length=50, verbose_name='Denominación')
code = models.CharField(max_length=3, verbose_name='Clave')
type = models.CharField(max_length=200, verbose_name='Tipo de integrante')
qty = models.PositiveSmallIntegerField(verbose_name='Cantidad de Vacantes', default=1)
created = models.DateTimeField(auto_now_add=True, verbose_name='Creación')
updated = models.DateTimeField(auto_now=True, verbose_name='Edición')

And at the time of creating / editing a new employee, I have to load only the positions that have 1 or more vacancies free, how can I do that from the Django administrator?

    
asked by Emmanuel Frias 04.12.2018 в 19:50
source

0 answers