def edit(request, expedient_id=None): if request.method == "POST": form = ExpedientForm(request.POST) if form.is_valid(): ExpedientService.save_from_form(form) return get_redirect(request, expedient_id) else: initial_data = {"expedient_num": Expedient.objects.latest().id + 1} if expedient_id: expedient = get_object_or_404(Expedient, id=expedient_id) initial_data = ExpedientService.build_initial_data(expedient) form = ExpedientForm(initial=initial_data) return render_to_response("expedient/edit.html", {"form": form}, context_instance=RequestContext(request))