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})
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})