Оформление страницы входа

We use cookies. Read the Privacy and Cookie Policy

Мы усовершенствовали внешний вид страницы входа, но формы входа изменения пока не коснулись. Приведем внешний вид формы в соответствие с остальными элементами страницы:

login.html

{% extends "learning_logs/base.html" %}

(1) {% load bootstrap3 %}

(2){% block header %}

<h2>Log in to your account.</h2>

{% endblock header %}

{% block content %}

. .

(3) <form method="post" action="{% url 'users:login' %}" class="form">

{% csrf_token %}

(4) . .{% bootstrap_form form %}

(5) . .{% buttons %}

. . <button name="submit" class="btn btn-primary">log in</button>

. .{% endbuttons %}

. .

<input type="hidden" name="next" value="{% url 'learning_logs:index' %}" />

</form>

. .

{% endblock content %}

В точке (1) в шаблон загружаются шаблонные теги bootstrap3. В точке (2) определяется блок header, который описывает, для чего нужна страница. Обратите внимание: блок {% if form.errors %} удален из шаблона; django-bootstrap3 управляет ошибками формы автоматически.

В точке (3) добавляется атрибут class="form", после чего при отображении формы (4) используется шаблонный тег {% bootstrap_form %}; он заменяет тег {{ form.as_p }}, используемый в главе 19. Шаблонный тег {% booststrap_form %} вставляет правила в стиле Bootstrap в отдельные элементы формы при ее построении. В точке (5) открывается шаблонный тег bootstrap3 {% buttons %}, который добавляет стилевое оформление Bootstrap к кнопкам.

На рис. 20.2 показана форма входа так, как она выглядит сейчас. Страница стала намного чище, ее оформление — последовательно, а предназначение — предельно ясно.

Рис. 20.2. Страница входа, оформленная с использованием Bootstrap

Попробуйте выполнить вход с неверным именем пользователя или паролем; вы увидите, что даже сообщения об ошибках следуют тому же стилю оформления и хорошо интегрируются с сайтом в целом.