Improve error placement in instance form

This commit is contained in:
Tobias Kunze 2025-09-04 00:57:52 +02:00
parent 5f75b0465f
commit 39f7ee5a0a
2 changed files with 9 additions and 12 deletions

View file

@ -4,6 +4,7 @@
method="post" method="post"
{% if form_action %}action="{{ form_action }}"{% endif %}> {% if form_action %}action="{{ form_action }}"{% endif %}>
{% csrf_token %} {% csrf_token %}
{% include "frontend/forms/errors.html" %}
<ul class="nav nav-tabs" id="myTab" role="tablist"> <ul class="nav nav-tabs" id="myTab" role="tablist">
{% for fieldset in form.get_fieldsets %} {% for fieldset in form.get_fieldsets %}
{% if not fieldset.hidden %} {% if not fieldset.hidden %}

View file

@ -163,14 +163,12 @@ class ServiceOfferingDetailView(OrganizationViewMixin, HtmxViewMixin, DetailView
) )
return redirect(service_instance.urls.base) return redirect(service_instance.urls.base)
except ValidationError as e: except ValidationError as e:
messages.error(self.request, e.message or str(e)) form.add_error(None, e.message or str(e))
except Exception as e: except Exception as e:
messages.error( error_message = self.organization.add_support_message(
self.request, _(f"Error creating instance: {str(e)}.")
self.organization.add_support_message(
_(f"Error creating instance: {str(e)}.")
),
) )
form.add_error(None, error_message)
# If the form is not valid or if the service creation failed, we render it again # If the form is not valid or if the service creation failed, we render it again
context["service_form"] = form context["service_form"] = form
@ -362,15 +360,13 @@ class ServiceInstanceUpdateView(
) )
return redirect(self.object.urls.base) return redirect(self.object.urls.base)
except ValidationError as e: except ValidationError as e:
messages.error(self.request, e.message or str(e)) form.add_error(None, e.message or str(e))
return self.form_invalid(form) return self.form_invalid(form)
except Exception as e: except Exception as e:
messages.error( error_message = self.organization.add_support_message(
self.request, _(f"Error updating instance: {str(e)}.")
self.organization.add_support_message(
_(f"Error updating instance: {str(e)}.")
),
) )
form.add_error(None, error_message)
return self.form_invalid(form) return self.form_invalid(form)
def get_success_url(self): def get_success_url(self):