Не работает пользовательский размер поля в хрустящей форме django
я хочу вывести форму для создания постов. я использую crispy-form и она сейчас выводит: 
с html-шаблоном:
{% extends 'blog_app/base.html' %}
{% load crispy_forms_tags %}
{% block content %}
<div class="content-section">
<form method="POST">
{% csrf_token %}
<fieldset class="form-group">
<legend class="border-bottom mb-4">Create Post</legend>
{{ form.media }}
{{ form|crispy }}
</fieldset>
<div class="form-group">
<button class="btn btn-outline-info" type="submit">Post</button>
</div>
</form>
</div>
{% endblock %}
я хочу увеличить размер поля заголовка и уменьшить размер поля содержимого так, чтобы поместился раздел содержимого.
что я пробовал:
- в шаблоне, отображать каждое поле как хрустящее поле с заданным css классом:
{% block content %}
<div class="content-section">
<form method="POST">
{% csrf_token %}
<div class="form-group col-md-8">
{{ form.title|as_crispy_field }}
</div>
<div class="form-group col-md-8">
{{ form.content|as_crispy_field }}
</div>
<div class="form-group">
<button class="btn btn-outline-info" type="submit">Post</button>
</div>
</form>
</div>
{% endblock %}
- в классе формы установите помощника и макет:
class PostCreateForm(forms.ModelForm):
class Meta:
model = Post
fields = ['title', 'content']
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.helper = FormHelper()
self.layout = Layout(
Field('title', id="form-title", css_class="col-md-8", name="title"),
Field('content', id="form-content", css_class="col-md-8", name="title"))
в обоих случаях ничего не меняется. может ли кто-нибудь дать мне указатель?
Убедитесь, что у вас есть правильный пакет шаблонов в вашем settings.py:
CRISPY_TEMPLATE_PACK = 'bootstrap4'
...и используйте ваши столбцы и строки в макете (в помощнике формы, не непосредственно в форме):
from crispy_forms.layout import Layout, HTML, Row, Column
class PostCreateForm(forms.ModelForm):
class Meta:
model = Post
fields = ['title', 'content']
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.helper = FormHelper()
self.helper.layout = Layout(
Row(
Column(
'title',
css_class='col-md-8'
),
),
Row(
Column(
'content',
css_class='col-md-8'
),
)
)
Далее, используйте crispy templatetag:
<form method="POST">
{% csrf_token %}
<fieldset class="form-group">
<legend class="border-bottom mb-4">Create Post</legend>
{{ form.media }}
{% crispy form %}
</fieldset>
<div class="form-group">
<button class="btn btn-outline-info" type="submit">Post</button>
</div>
</form>