I want to make a very small change to the Django admin logout page.
I know how to use templates to override the Django admin templates, so I have tried to do the same thing with the logout file.
I have set up a new template at templates/registration/logged_out.html. The content of this file is as follows:
{% extends "registration/logged_out.html" %}
{% block content %}
<p>Thanks for using the site.</p>
<p><a href="../">Log in again</a></p>
<p><a href="/">Return to the home page</a></p>
{% endblock %}
However, something is definitely wrong, because when I try to log out of admin, the site stops running.
I’ve found the Django docs page recommending the use of AdminSite for changes to the base template and logout pages, but is this really necessary for such a tiny change?
If so, does anyone have an example of how I might set up the logout template? I’m rather intimidated by the instructions for AdminSite.
Thanks.
The reason of manage.py runserver termination is an inheritance loop.
Django loads “registration/logged_out.html” and that it tries to load it’s parent: “registration/logged_out.html”. Unfortunately parent is the same template and so we end up on the template inheritance loop.
Manage.py will terminate with some variant of stack overflow error…
You can easily escape the issue by extending the parent of original “registration/logged_out.html” -> “admin/base_site.html”. I.e: