Add UnsupportedChildType error for formsets

This also replaces the PolymorphicInlineModelAdmin.get_get_child_inline_instance()
and BasePolymorphicModelFormSet._construct_form() lookup with UnsupportedChildType
This commit is contained in:
Diederik van der Boor
2017-10-08 21:53:12 +02:00
parent 4d5fb4be3b
commit cafaf95f06
3 changed files with 25 additions and 4 deletions
+3 -2
View File
@@ -10,7 +10,8 @@ from django.contrib.admin.utils import flatten_fieldsets
from django.core.exceptions import ImproperlyConfigured
from django.forms import Media
from polymorphic.formsets import polymorphic_child_forms_factory, BasePolymorphicInlineFormSet, PolymorphicFormSetChild
from polymorphic.formsets import polymorphic_child_forms_factory, BasePolymorphicInlineFormSet, \
PolymorphicFormSetChild, UnsupportedChildType
from polymorphic.formsets.utils import add_media
from .helpers import PolymorphicInlineSupportMixin
@@ -89,7 +90,7 @@ class PolymorphicInlineModelAdmin(InlineModelAdmin):
try:
return self._child_inlines_lookup[model]
except KeyError:
raise ValueError("Model '{0}' not found in child_inlines".format(model.__name__))
raise UnsupportedChildType("Model '{0}' not found in child_inlines".format(model.__name__))
def get_formset(self, request, obj=None, **kwargs):
"""