def edit(request, carrera_jurisdiccional_id): """ Edición de los datos de un título jurisdiccional. """ carrera_jurisdiccional = CarreraJurisdiccional.objects.get(pk=carrera_jurisdiccional_id) titulo_anterior_id = int(carrera_jurisdiccional.carrera_id) if request.method == "POST": form = CarreraJurisdiccionalDatosBasicosForm( request.POST, instance=carrera_jurisdiccional, jurisdiccion_id=request.get_perfil().jurisdiccion().id ) if form.is_valid(): # Cambió el título? Borrar las orientaciones cambio_titulo = titulo_anterior_id is not int(request.POST["carrera"]) if cambio_titulo: carrera_jurisdiccional.eliminar_orientaciones() carrera_jurisdiccional = form.save() request.set_flash("success", "Datos actualizados correctamente.") else: request.set_flash("warning", "Ocurrió un error actualizando los datos.") else: form = CarreraJurisdiccionalDatosBasicosForm( instance=carrera_jurisdiccional, jurisdiccion_id=request.get_perfil().jurisdiccion().id ) return my_render( request, "titulos/carrera_jurisdiccional/edit.html", { "form": form, "carrera_jurisdiccional": carrera_jurisdiccional, "form_template": "titulos/carrera_jurisdiccional/form_datos_basicos.html", "is_new": False, "page_title": "Datos básicos", "current_page": "datos_basicos", }, )
def create(request): """ Alta de título jurisdiccional. """ if request.method == "POST": form = CarreraJurisdiccionalDatosBasicosForm( request.POST, jurisdiccion_id=request.get_perfil().jurisdiccion().id ) if form.is_valid(): carrera_jurisdiccional = form.save(commit=False) carrera_jurisdiccional.estado = EstadoCarreraJurisdiccional.objects.get( nombre=EstadoCarreraJurisdiccional.REGISTRADO ) carrera_jurisdiccional.jurisdiccion = request.get_perfil().jurisdiccion() carrera_jurisdiccional.save() # form.save_m2m() # Guardo las relaciones - https://docs.djangoproject.com/en/1.2/topics/forms/modelforms/#the-save-method carrera_jurisdiccional.registrar_estado() request.set_flash("success", "Datos guardados correctamente.") # redirigir a edit return HttpResponseRedirect(reverse("carreraJurisdiccionalEdit", args=[carrera_jurisdiccional.id])) else: request.set_flash("warning", "Ocurrió un error guardando los datos.") else: form = CarreraJurisdiccionalDatosBasicosForm(jurisdiccion_id=request.get_perfil().jurisdiccion().id) # Agrego el filtro por jurisdicción return my_render( request, "titulos/carrera_jurisdiccional/new.html", { "form": form, "form_template": "titulos/carrera_jurisdiccional/form_datos_basicos.html", "is_new": True, "page_title": "Datos básicos", "current_page": "datos_basicos", }, )