diff --git a/api/vucem/views.py b/api/vucem/views.py index e148943..bacda3c 100644 --- a/api/vucem/views.py +++ b/api/vucem/views.py @@ -1,4 +1,5 @@ from django.shortcuts import render +from ..organization.models import Organizacion from rest_framework import viewsets from rest_framework.pagination import PageNumberPagination from django_filters.rest_framework import DjangoFilterBackend @@ -93,7 +94,23 @@ class VucemView(viewsets.ModelViewSet): if not self.request.user.is_authenticated or not hasattr(self.request.user, 'organizacion'): raise ValueError("El usuario debe estar autenticado y tener una organización asignada.") if self.request.user.is_superuser: - serializer.save(created_by=self.request.user, updated_by=self.request.user) + organizacion_id = self.request.data.get('organizacion_id') + + if not organizacion_id: + raise ValueError("Los superusuarios deben especificar una organización") + + try: + # Importa el modelo Organizacion + # from ..organization.models import Organizacion + organizacion = Organizacion.objects.get(id=organizacion_id) + except Organizacion.DoesNotExist: + raise ValueError({"organizacion": "Organización no encontrada"}) + + serializer.save( + organizacion=organizacion, + created_by=self.request.user, + updated_by=self.request.user + ) return else: serializer.save(