Commit a420f83e authored by Collin Anderson's avatar Collin Anderson Committed by Loic Bistuer
Browse files

Fixed #24055 -- Keep reference to view class for resolve()

parent 67235fd4
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -583,6 +583,7 @@ class ModelAdmin(BaseModelAdmin):
        def wrap(view):
            def wrapper(*args, **kwargs):
                return self.admin_site.admin_view(view)(*args, **kwargs)
            wrapper.model_admin = self
            return update_wrapper(wrapper, view)

        info = self.model._meta.app_label, self.model._meta.model_name
+1 −0
Original line number Diff line number Diff line
@@ -245,6 +245,7 @@ class AdminSite(object):
        def wrap(view, cacheable=False):
            def wrapper(*args, **kwargs):
                return self.admin_view(view, cacheable)(*args, **kwargs)
            wrapper.admin_site = self
            return update_wrapper(wrapper, view)

        # Admin-site-wide views.
+2 −0
Original line number Diff line number Diff line
@@ -69,6 +69,8 @@ class View(object):
            self.args = args
            self.kwargs = kwargs
            return self.dispatch(request, *args, **kwargs)
        view.view_class = cls
        view.view_initkwargs = initkwargs

        # take name and docstring from class
        update_wrapper(view, cls, updated=())
+5 −0
Original line number Diff line number Diff line
@@ -65,6 +65,11 @@ View

            response = MyView.as_view()(request)

        .. versionadded:: 1.9

        The returned view has ``view_class`` and ``view_initkwargs``
        attributes.

    .. method:: dispatch(request, *args, **kwargs)

        The ``view`` part of the view -- the method that accepts a ``request``
+5 −0
Original line number Diff line number Diff line
@@ -1490,6 +1490,11 @@ templates used by the :class:`ModelAdmin` views:

        url(r'^my_view/$', self.admin_site.admin_view(self.my_view, cacheable=True))

    .. versionadded:: 1.9

    ``ModelAdmin`` views have ``model_admin`` attributes. Other
    ``AdminSite`` views have ``admin_site`` attributes.

.. method:: ModelAdmin.get_form(request, obj=None, **kwargs)

    Returns a :class:`~django.forms.ModelForm` class for use in the admin add
Loading