def index(req): zato_servers = req.odb.query(Server).order_by("name").all() is_edit = req.POST.get("is_edit", False) success_message = req.GET.get("success_message", None) error_message = req.GET.get("error_message", None) if req.method == "POST": if is_edit: prefix = "edit-" edit_form = EditServerForm(req.POST, prefix="edit") form = RegisterServerForm() current_form = edit_form zato_server = Server(req.POST[prefix + "server_id"]) success_message = "Successfully saved the changes" else: prefix = "" form = RegisterServerForm(req.POST) edit_form = EditServerForm(prefix="edit") current_form = form zato_server = Server() success_message = "Successfully registered the server" if current_form.is_valid(): name = req.POST[prefix + "name"].strip() address = req.POST[prefix + "address"].strip() zato_server.name = name zato_server.address = address zato_server.save() # Return to the list of registered servers. return HttpResponseRedirect(reverse(index) + "?success_message=%s" % success_message) else: success_message = None error_message = current_form.errors print(edit_form.errors, 2222) else: form = RegisterServerForm() edit_form = EditServerForm(prefix="edit") return render_to_response("zato/servers/index.html", { "form": form, "edit_form": edit_form, "zato_servers":zato_servers, "success_message":success_message, "error_message":error_message }, context_instance=RequestContext(req))