summaryrefslogtreecommitdiff
path: root/django
diff options
context:
space:
mode:
authorCollin Anderson <cmawebsite@gmail.com>2014-12-27 02:16:53 -0500
committerLoic Bistuer <loic.bistuer@gmail.com>2015-01-17 22:09:10 +0700
commita420f83e7d2e446ca01ef7c13d30c2ef3e975e5c (patch)
treec3c6aed2cd6c160d2f75e2f6f3f9d8c0b08d8ce7 /django
parent67235fd4ef1b006fc9cdb2fa20e7bb93b0edff4b (diff)
Fixed #24055 -- Keep reference to view class for resolve()
Diffstat (limited to 'django')
-rw-r--r--django/contrib/admin/options.py1
-rw-r--r--django/contrib/admin/sites.py1
-rw-r--r--django/views/generic/base.py2
3 files changed, 4 insertions, 0 deletions
diff --git a/django/contrib/admin/options.py b/django/contrib/admin/options.py
index fe657546a4..ab10952e3f 100644
--- a/django/contrib/admin/options.py
+++ b/django/contrib/admin/options.py
@@ -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
diff --git a/django/contrib/admin/sites.py b/django/contrib/admin/sites.py
index ab0ec1a837..54d1e2de7a 100644
--- a/django/contrib/admin/sites.py
+++ b/django/contrib/admin/sites.py
@@ -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.
diff --git a/django/views/generic/base.py b/django/views/generic/base.py
index 8a9b6baa44..e9aac357f4 100644
--- a/django/views/generic/base.py
+++ b/django/views/generic/base.py
@@ -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=())