from django.db import models from reymotausers.models import ReyMotaUser from django.utils import timezone class Evento(models.Model): nombre = models.CharField(max_length=100) descripcion = models.TextField() fecha = models.DateTimeField() hora = models.TimeField(default=timezone.now) # Nuevo campo para la hora plazas_disponibles = models.PositiveIntegerField() def __str__(self): return self.nombre def plazas_restantes(self): return self.plazas_disponibles - self.reservas.count() class Reserva(models.Model): evento = models.ForeignKey( Evento, related_name="reservas", on_delete=models.CASCADE) usuario = models.ForeignKey(ReyMotaUser, on_delete=models.CASCADE) fecha_reserva = models.DateTimeField(auto_now_add=True) def __str__(self): return f'{self.usuario.nombre} - {self.evento.nombre}' class ListaEspera(models.Model): evento = models.ForeignKey(Evento, on_delete=models.CASCADE, related_name="lista_espera") usuario = models.ForeignKey(ReyMotaUser, on_delete=models.CASCADE) fecha_apuntado = models.DateTimeField(auto_now_add=True) def __str__(self): return f'{self.usuario.nombre} en lista de espera para {self.evento.nombre}. Solicitada plaza el: {self.fecha_apuntado}'