Skip to content

TypeError at /login/ #1317

@merit-mthompson

Description

@merit-mthompson

Django Debug Toolbar version: 2.2

With the following view:

from django.contrib.auth.views import LoginView

class PublicLoginView(LoginView):
    redirect_field_name = None

Getting the following error:

Environment:

Request Method: GET
Request URL: http://(removed)/login/

Django Version: 2.2.2
Python Version: 3.6.9
Installed Applications:
['django.contrib.admin',
 'django.contrib.auth',
 'django.contrib.contenttypes',
 'django.contrib.humanize',
 'django.contrib.sessions',
 'django.contrib.messages',
 'django.contrib.staticfiles',
 'django.forms',
 'capture_tag',
 'django_celery_beat',
 'django_celery_results',
 'debug_toolbar']
Installed Middleware:
['debug_toolbar.middleware.DebugToolbarMiddleware',
 'django.middleware.security.SecurityMiddleware',
 'django.contrib.sessions.middleware.SessionMiddleware',
 'django.middleware.common.CommonMiddleware',
 'django.middleware.csrf.CsrfViewMiddleware',
 'django.contrib.messages.middleware.MessageMiddleware',
 'django.middleware.clickjacking.XFrameOptionsMiddleware',
 'django.contrib.auth.middleware.AuthenticationMiddleware',
 'global_login_required.GlobalLoginRequiredMiddleware']

Traceback:

File "/home/django/srv/current/venv/lib/python3.6/site-packages/django/core/handlers/exception.py" in inner
  34.             response = get_response(request)

File "/home/django/srv/current/venv/lib/python3.6/site-packages/django/core/handlers/base.py" in _get_response
  145.                 response = self.process_exception_by_middleware(e, request)

File "/home/django/srv/current/venv/lib/python3.6/site-packages/django/core/handlers/base.py" in _get_response
  143.                 response = response.render()

File "/home/django/srv/current/venv/lib/python3.6/site-packages/django/template/response.py" in render
  106.             self.content = self.rendered_content

File "/home/django/srv/current/venv/lib/python3.6/site-packages/django/template/response.py" in rendered_content
  83.         content = template.render(context, self._request)

File "/home/django/srv/current/venv/lib/python3.6/site-packages/django/template/backends/django.py" in render
  61.             return self.template.render(context)

File "/home/django/srv/current/venv/lib/python3.6/site-packages/django/template/base.py" in render
  171.                     return self._render(context)

File "/home/django/srv/current/venv/lib/python3.6/site-packages/django/test/utils.py" in instrumented_test_render
  95.     template_rendered.send(sender=self, template=self, context=context)

File "/home/django/srv/current/venv/lib/python3.6/site-packages/django/dispatch/dispatcher.py" in send
  175.             for receiver in self._live_receivers(sender)

File "/home/django/srv/current/venv/lib/python3.6/site-packages/django/dispatch/dispatcher.py" in <listcomp>
  175.             for receiver in self._live_receivers(sender)

File "/home/django/srv/current/venv/lib/python3.6/site-packages/debug_toolbar/panels/templates/panel.py" in _store_template_info
  91.                 key_values = sorted(context_layer.items())

Exception Type: TypeError at /login/
Exception Value: '<' not supported between instances of 'NoneType' and 'str'

This only happens when redirect_field_name is set to None. If I remove it or change it to a string things work as expected and there aren't any errors.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions