Ejemplo n.º 1
0
def editar_software(request,id_soft):
    global profile
    softwares = Softwares.objects.all()
    for soft in softwares:
        autores = ','.join([(aut.nombres + " " + aut.apellidos) for aut in soft.autores.all()])
        soft.lista_autores = autores
    soft = Softwares.objects.get(pk=id_soft)
    form_edicion = SoftwareForm(instance=soft, initial=soft.__dict__)

    if request.method == 'POST':
        pais = request.POST.get('pais')
        form_edicion.fields['pais'] = pais
        form_edicion = SoftwareForm(request.POST,instance=soft,initial=soft.__dict__)

        if form_edicion.has_changed():
         if form_edicion.is_valid():
            software_nuevo=form_edicion.save(commit=False)
            software_nuevo.nombre = software_nuevo.nombre.upper()
            software_nuevo.pais = software_nuevo.pais.upper()
            software_nuevo.nombre_comercial = software_nuevo.nombre_comercial.upper()
            software_nuevo.nombre_proyecto = software_nuevo.nombre_proyecto.upper()
            software_nuevo.institucion_financiadora = software_nuevo.institucion_financiadora.upper()
            software_nuevo.descripcion = software_nuevo.descripcion.upper()
            software_nuevo.save()
            form_edicion.save()
            return HttpResponseRedirect("/software/listar/")
        else:
            return HttpResponseRedirect("/software/listar/")
    return render(request, 'mostrar_software.html', {'softwares': softwares, 'edicion': True, 'form_edicion': form_edicion,'profile':profile})
Ejemplo n.º 2
0
def crear_software(request):
    global profile
    if request.method == 'POST':
        pais = request.POST.get('pais')
        form = SoftwareForm(request.POST)
        if form.is_valid():
            form.fields['pais'] = pais
            software = form.save(commit=False)
            software.nombre = software.nombre.upper()
            software.pais = software.pais.upper()
            software.nombre_comercial = software.nombre_comercial.upper()
            software.nombre_proyecto = software.nombre_proyecto.upper()
            software.institucion_financiadora = software.institucion_financiadora.upper()
            software.descripcion = software.descripcion.upper()
            software.save()
            form.save()
            return render(request, 'crear_software.html', {'form': SoftwareForm(), 'exito': True,'profile':profile})
    else:
        form = SoftwareForm()
    return render(request, 'crear_software.html', {'form': form, 'exito': False,'profile':profile})