summaryrefslogtreecommitdiff
path: root/django/forms
diff options
context:
space:
mode:
Diffstat (limited to 'django/forms')
-rw-r--r--django/forms/models.py6
1 files changed, 5 insertions, 1 deletions
diff --git a/django/forms/models.py b/django/forms/models.py
index 837da74814..e2d739fd1a 100644
--- a/django/forms/models.py
+++ b/django/forms/models.py
@@ -678,7 +678,11 @@ class BaseModelFormSet(BaseFormSet):
else:
qs = self.model._default_manager.get_query_set()
qs = qs.using(form.instance._state.db)
- form.fields[self._pk_field.name] = ModelChoiceField(qs, initial=pk_value, required=False, widget=HiddenInput)
+ if form._meta.widgets:
+ widget = form._meta.widgets.get(self._pk_field.name, HiddenInput)
+ else:
+ widget = HiddenInput
+ form.fields[self._pk_field.name] = ModelChoiceField(qs, initial=pk_value, required=False, widget=widget)
super(BaseModelFormSet, self).add_fields(form, index)
def modelformset_factory(model, form=ModelForm, formfield_callback=None,