From b9f0c7695adff195b3a644f11b6f457e72ecbd08 Mon Sep 17 00:00:00 2001 From: dakotahorstman Date: Fri, 7 Oct 2022 15:11:22 -0500 Subject: [PATCH] Support crispy-forms rendering --- betterforms/multiform.py | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/betterforms/multiform.py b/betterforms/multiform.py index bcdeeaf..e660bd4 100644 --- a/betterforms/multiform.py +++ b/betterforms/multiform.py @@ -1,6 +1,7 @@ from itertools import chain from operator import add from collections import OrderedDict +from contextlib import suppress from django.forms import BaseFormSet from django.forms.utils import ErrorList @@ -56,7 +57,15 @@ def __str__(self): return self.as_table() def __getitem__(self, key): - return self.forms[key] + try: + # Return a form + return self.forms[key] + except KeyError: + # No form exists, try to return a field in the form + for _, form in self.forms.items(): + with suppress(KeyError): + return form[key] + raise @property def errors(self):