Изменим нашу форму комментариев, а именно ее поля ввода. Для этого первым делом доработаем наш CommentForm в forms.py приложения blog:
class CommentForm(forms.ModelForm):
name = forms.CharField(required=True,
widget=forms.TextInput(attrs={"class": "form-control", 'placeholder': 'Name'}))
email = forms.EmailField(required=True,
widget=forms.EmailInput(attrs={"class": "form-control", 'placeholder': 'Email'}))
body = forms.CharField(required=True, widget=forms.Textarea(attrs={"class": "form-control", 'placeholder': 'Text'}))
class Meta:
model = Comment
fields = ['name', 'email', 'body']
Мы добавили в обработку формы поля name и email и к каждому полю мы добавили класс form-control, а также текстовую подсказку для пользователя в поле для ввода информации.
Проверим что у нас получилось:
Теперь давайте переработаем наш шаблон для добавления комментария, откроем comment_form.html и добавим следующий код:
<form action="{% url "blog:post_comment" post.id %}" method="post">
{% csrf_token %}
<div class="row">
<h3>Add a new comment</h3>
<div class="col mt-2">
{{ form.name }}
</div>
<div class="col mt-2">
{{ form.email }}
</div>
<div class="mt-2">
{{ form.body }}
<input type="submit" class="btn btn-primary mb-3" value="Add comment">
</div>
</div>
</form>
В данном шаблоне, мы выводим все поля формы отдельно, чтобы обернуть их в нужные стили. Проверим работу: