Explorar el Código

Añadir parejas-form.py

creylopez hace 11 meses
padre
commit
db12e0d0a3
Se han modificado 1 ficheros con 29 adiciones y 0 borrados
  1. 29 0
      parejas-form.py

+ 29 - 0
parejas-form.py

@@ -0,0 +1,29 @@
+from django import forms
+from django.contrib.auth import get_user_model
+from .models import Reserva
+
+User = get_user_model()
+
+class ReservaForm(forms.ModelForm):
+    acompanante = forms.ModelChoiceField(
+        queryset=User.objects.none(),
+        required=False,
+        label="Acompañante"
+    )
+
+    class Meta:
+        model = Reserva
+        fields = ['acompanante']
+
+    def __init__(self, *args, **kwargs):
+        evento = kwargs.pop('evento', None)
+        usuario = kwargs.pop('usuario', None)
+        super().__init__(*args, **kwargs)
+
+        # Solo permitir elegir acompañante si el evento es para parejas
+        if evento and evento.para_parejas:
+            # Todos los usuarios menos el propio
+            self.fields['acompanante'].queryset = User.objects.exclude(id=usuario.id)
+        else:
+            # Si no es evento de parejas, ocultamos el campo
+            self.fields.pop('acompanante')