def edit(request, normativa_jurisdiccional_id): " Edición de los datos de una normativa jurisdiccional " normativa_jurisdiccional = NormativaJurisdiccional.objects.get(pk=normativa_jurisdiccional_id) estado_actual = normativa_jurisdiccional.estado if estado_actual is None: estado_actual_id = None else: estado_actual_id = estado_actual.id if request.method == "POST": form = NormativaJurisdiccionalForm( request.POST, instance=normativa_jurisdiccional, initial={"estado": estado_actual_id} ) if form.is_valid(): normativa_jurisdiccional = form.save() "Cambiar el estado?" if int(request.POST["estado"]) is not estado_actual_id: normativa_jurisdiccional.registrar_estado() request.set_flash("success", "Datos actualizados correctamente.") return HttpResponseRedirect(reverse("normativaJurisdiccionalEdit", args=[normativa_jurisdiccional_id])) else: request.set_flash("warning", "Ocurrió un error actualizando los datos.") else: form = NormativaJurisdiccionalForm(instance=normativa_jurisdiccional, initial={"estado": estado_actual_id}) form.fields["estado"].empty_label = None return my_render(request, "titulos/normativa_jurisdiccional/edit.html", {"form": form, "is_new": False})
def create(request): " Crear nueva normativa " if request.method == "POST": form = NormativaJurisdiccionalForm(request.POST) if form.is_valid(): normativa_jurisdiccional = form.save(commit=False) normativa_jurisdiccional.jurisdiccion = request.get_perfil().jurisdiccion() normativa_jurisdiccional.save() normativa_jurisdiccional.registrar_estado() request.set_flash("success", "Datos guardados correctamente.") # redirigir a edit return HttpResponseRedirect(reverse("normativaJurisdiccionalEdit", args=[normativa_jurisdiccional.id])) else: request.set_flash("warning", "Ocurrió un error guardando los datos.") else: form = NormativaJurisdiccionalForm() return my_render(request, "titulos/normativa_jurisdiccional/new.html", {"form": form, "is_new": True})