def nuevo_grupo(request): """ Funcion que recibe un request y devuelve un response para crear un nuevo flujo @param request: django.http.HttpRequest. @return: render_to_response. """ usuario = request.user if request.method == "POST": formulario = RolForm(request.POST) if formulario.is_valid: try: proyecto = Proyecto.objects.get(scrum_master=usuario) formulario.proyecto = proyecto rol = formulario.save() rol = get_object_or_404(Rol, pk=rol.id) rol.proyecto = proyecto rol.save() return HttpResponseRedirect("/../grupos") except: error = "Error al procesar la entidad" return render_to_response( "crear_grupo.html", {"formulario": formulario, "errors": error, "usuario": usuario}, context_instance=RequestContext(request), ) else: formulario = RolForm() return render_to_response( "crear_grupo.html", {"formulario": formulario, "usuario": usuario}, context_instance=RequestContext(request) )
def rolNuevo(request): """ Recibe un request, obtiene el formulario con los datos del rol a crear o la solicitud de envio de dicho formulario. Luego verifica los datos recibidos y registra el nuevo rol. @type request: django.http.HttpRequest @param request: Contiene informacion sobre la solic. web actual que llamo a esta vista @rtype: django.http.HttpResponse @return: rolcreado.html, mensaje de exito @author: Francisco Velloso """ if request.method == 'POST': form = RolForm(request.POST) if form.is_valid(): form.clean() nombreRol = form.cleaned_data['Nombre_de_Rol'] permisos = form.cleaned_data['Permisos'] proyecto = form.cleaned_data['Proyecto'] descripcion = form.cleaned_data['Descripcion'] rol = Roles.objects.create(name = nombreRol) for permiso in permisos: rol.permissions.add(Permission.objects.get(codename=permiso)) p = proyecto if proyecto: try: p = Proyectos.objects.get(id=proyecto) except Roles.DoesNotExist: p = '' rol.proyecto = p rol.descripcion = descripcion rol.save() template_name='./Roles/rolcreado.html' return render(request, template_name) else: form = RolForm() template_name='./Roles/rolnuevo.html' return render(request, template_name, {'form': form})