Есть несколько способов сделать это, но я перечислил 2 простых способа ниже:
- Добавление ошибки в поле формы с помощью
form.add_error(field, error)
- Добавление сообщения об ошибке с использованием
messages
framework
Метод 1 :
По вашему мнению, вы можете выполнить необходимую проверку, и если эта проверка не пройдена, т.е.пользователь пытается отправить книгу дважды, которую вы можете использовать (при условии, что ваша форма называется form
, как и в вашем коде, title
- это поле, в которое вы хотите добавить сообщение об ошибке, а второй параметр - этосообщение об ошибке, которое вы хотите отобразить рядом с этим полем):
form.add_error('title', 'Book already taken out')
Метод 2 :
Вы можете выполнить проверку, и если это не удастся, выможет сделать
messages.add_message(request, messages.WARNING, 'Book already taken out')
Затем в вашем шаблоне вы можете сделать
<ul class="messages">
{% for message in messages %}
<li{% if message.tags %} class="{{ message.tags }}"{% endif %}>{{ message }}</li>
{% endfor %}
</ul>
Кроме того, вы можете проверить, если message.tags == DEFAULT_MESSAGE_LEVELS.ERROR
, а затем добавить дополнительный класс, который стилизует шрифт как красныйтекст, чтобы пользователь был более информирован о том, что это ошибка.
Обязательно добавьте
from django.contrib import messages
в свой список импорта.
См. https://docs.djangoproject.com/en/2.1/ref/contrib/messages/ для получения дополнительной информации.