diff --git a/django/contrib/admin/sites.py b/django/contrib/admin/sites.py index ac8835529e..acaceb4ac4 100644 --- a/django/contrib/admin/sites.py +++ b/django/contrib/admin/sites.py @@ -196,7 +196,8 @@ class AdminSite(object): inner = never_cache(inner) # We add csrf_protect here so this function can be used as a utility # function for any view, without having to repeat 'csrf_protect'. - inner = csrf_protect(inner) + if not getattr(view, 'csrf_exempt', False): + inner = csrf_protect(inner) return update_wrapper(inner, view) def get_urls(self):