#33995: Rendering empty_form crashes when empty_permitted is passed to
form_kwargs
-------------------------------------+-------------------------------------
Reporter: claypooj21 | Owner: nobody
Type: Bug | Status: new
Component: Forms | Version: 4.1
Severity: Normal | Resolution:
Keywords: formset, | Triage Stage: Accepted
empty_form, empty_permitted, form |
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 1 | UI/UX: 0
-------------------------------------+-------------------------------------
Changes (by Mariusz Felisiak):
* easy: 0 => 1
* stage: Unreviewed => Accepted
Comment:
Thanks for the report. It should be enough to change `form_kwargs` for
`empty_form`, e.g.
{{{#!diff
diff --git a/django/forms/formsets.py b/django/forms/formsets.py
index 57676428ff..b73d1d742e 100644
--- a/django/forms/formsets.py
+++ b/django/forms/formsets.py
@@ -257,14 +257,15 @@ class BaseFormSet(RenderableFormMixin):
@property
def empty_form(self):
- form = self.form(
- auto_id=self.auto_id,
- prefix=self.add_prefix("__prefix__"),
- empty_permitted=True,
- use_required_attribute=False,
+ form_kwargs = {
**self.get_form_kwargs(None),
- renderer=self.renderer,
- )
+ "auto_id": self.auto_id,
+ "prefix": self.add_prefix("__prefix__"),
+ "use_required_attribute": False,
+ "empty_permitted": True,
+ "renderer": self.renderer,
+ }
+ form = self.form(**form_kwargs)
self.add_fields(form, None)
return form
}}}
Would you like to prepare a patch? (a regression test is required)
--
Ticket URL: <https://code.djangoproject.com/ticket/33995#comment:1>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.
--
You received this message because you are subscribed to the Google Groups
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/django-updates/010701831bfebe50-97dd8add-b72c-45da-b7e6-56877d4d50ad-000000%40eu-central-1.amazonses.com.