Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Django admin breaks after upgrading to 1.8.1

Tags:

django

I upgraded from 1.7.3 to 1.8.1, and my admin is not working and the site is not loading because it fails while resolving paths.

Exception:

Enable 'django.contrib.auth.context_processors.auth' in your TEMPLATES setting in order to use the admin application.

This is the stack trace:

Environment:


Request Method: GET
Request URL: 

Django Version: 1.8.1
Python Version: 2.7.8
Installed Applications:
('django.contrib.admin',
 ..)
Installed Middleware:
('django.contrib.sessions.middleware.SessionMiddleware',
 ..)


Traceback:
File "/app/.heroku/python/lib/python2.7/site-packages/django/core/handlers/base.py" in get_response
  119.                 resolver_match = resolver.resolve(request.path_info)
File "/app/.heroku/python/lib/python2.7/site-packages/django/core/urlresolvers.py" in resolve
  366.             for pattern in self.url_patterns:
File "/app/.heroku/python/lib/python2.7/site-packages/django/core/urlresolvers.py" in url_patterns
  402.         patterns = getattr(self.urlconf_module, "urlpatterns", self.urlconf_module)
File "/app/.heroku/python/lib/python2.7/site-packages/django/core/urlresolvers.py" in urlconf_module
  396.             self._urlconf_module = import_module(self.urlconf_name)
File "/app/.heroku/python/lib/python2.7/importlib/__init__.py" in import_module
  37.     __import__(name)
File "/app/appname/urls.py" in <module>
  72.     url(r'^tarantino/', include(admin.site.urls)),
File "/app/.heroku/python/lib/python2.7/site-packages/django/contrib/admin/sites.py" in urls
  291.         return self.get_urls(), 'admin', self.name
File "/app/.heroku/python/lib/python2.7/site-packages/django/contrib/admin/sites.py" in get_urls
  250.             self.check_dependencies()
File "/app/.heroku/python/lib/python2.7/site-packages/django/contrib/admin/sites.py" in check_dependencies
  194.                     "Enable 'django.contrib.auth.context_processors.auth' "

Exception Type: ImproperlyConfigured at /
Exception Value: Enable 'django.contrib.auth.context_processors.auth' in your TEMPLATES setting in order to use the admin application.

I do have 'django.contrib.auth.context_processors.auth in my TEMPLATE_CONTEXT_PROCESSORS already so no sure why is this happening now?

like image 304
Isaac Avatar asked May 02 '15 17:05

Isaac


1 Answers

The TEMPLATE_CONTEXT_PROCESSORS was removed, and replaced with the TEMPLATES setting in Django 1.8.

You will have to modify your settings according to this guide, by removing the old TEMPLATE_CONTEXT_PROCESSORS and TEMPLATE_DIRS settings with:

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [],
        'APP_DIRS': True,
        'OPTIONS': {
            'context_processors': [
                'django.template.context_processors.debug',
                'django.template.context_processors.request',
                'django.contrib.auth.context_processors.auth',
                'django.contrib.messages.context_processors.messages',
            ],
        },
    },
]
like image 182
Claudiu Avatar answered Nov 10 '22 20:11

Claudiu