Как отобразить мою собственную html форму вместо того, чтобы делать {{ form.as_p }} с помощью forms.py django?

У меня есть файл forms.py с формой создания пользователя внутри него. Она прекрасно работает, но единственный способ, которым я могу отобразить поля в ней (имя_после фамилии, имя_после фамилии, имя пользователя, email, пароль и подтверждение пароля) - это написать {{ form.as_p }}. Я хочу отобразить его так, как я мог бы его стилизовать. Есть ли способы сделать это?

Вы можете добавить стиль css с помощью виджетов формы

class BasicForm(forms.Form):
   first_name = models.CharField(...,
                              widget=forms.TextInput(attrs={'class' : 'myclass'})
   last_name = models.CharField(...,
                             widget=forms.TextInput(attrs={'class' : 'myfieldclass'})

позднее использовать класс css дизайна

Вы можете писать свой собственный HTML с различной степенью детализации. Это описано в документации .

Crispy Forms - это широко используемый пакет, который значительно упрощает верстку фантазийных форм. Также вы можете сделать большую часть работы в Python, закодировав объект Crispy Layout, а не писать сложный HTML-шаблон.

Вернуться на верх