From f1697ec7c8fc851baa9c890a605acb67f04210f2 Mon Sep 17 00:00:00 2001 From: David Smith <39445562+smithdc1@users.noreply.github.com> Date: Mon, 20 Nov 2023 07:57:03 +0000 Subject: [PATCH] Refs #31026 -- Simplified BaseForm.get_context(). bf.errors returns an ErrorList. Access this directly and avoid creating a new instance in BaseForm.get_context() Calling str() on the ErrorList can also be deferred to when the variable used in the template. --- django/forms/forms.py | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/django/forms/forms.py b/django/forms/forms.py index b99ec8248a..5de14d598a 100644 --- a/django/forms/forms.py +++ b/django/forms/forms.py @@ -224,18 +224,16 @@ class BaseForm(RenderableFormMixin): hidden_fields = [] top_errors = self.non_field_errors().copy() for name, bf in self._bound_items(): - bf_errors = self.error_class(bf.errors, renderer=self.renderer) if bf.is_hidden: - if bf_errors: + if bf.errors: top_errors += [ _("(Hidden field %(name)s) %(error)s") % {"name": name, "error": str(e)} - for e in bf_errors + for e in bf.errors ] hidden_fields.append(bf) else: - errors_str = str(bf_errors) - fields.append((bf, errors_str)) + fields.append((bf, bf.errors)) return { "form": self, "fields": fields,