Создание ссылки на страницу входа

We use cookies. Read the Privacy and Cookie Policy

Добавим ссылку на страницу входа в base.html, чтобы она присутствовала на каждой странице. Ссылка не должна отображаться, если пользователь уже прошел процедуру входа, поэтому она вкладывается в тег {% if %}:

base.html

<p>

<a href="{% url 'learning_logs:index' %}">Learning Log</a> -

<a href="{% url 'learning_logs:topics' %}">Topics</a> -

(1) {% if user.is_authenticated %}

(2) . .Hello, {{ user.username }}.

{% else %}

(3) . .<a href="{% url 'users:login' %}">log in</a>

{% endif %}

</p>

{% block content %}{% endblock content %}

В системе аутентификации Django в каждом шаблоне доступна переменная user, в которой всегда присутствует атрибут is_authenticated: атрибут равен True, если пользователь прошел проверку, и False в противном случае. Это позволяет вам выводить разные сообщения для проверенных и непроверенных пользователей.

В данном случае мы выводим приветствие для пользователей, выполнивших вход. У проверенных пользователей устанавливается дополнительный атрибут username, который обеспечит личную настройку приветствия и напомнит пользователю о том, что вход был выполнен. В точке (3) выводится ссылка на страницу входа для пользователей, которые еще не прошли проверку.