Уведомления

Группа в Telegram: @pythonsu

#1 Фев. 19, 2020 00:50:26

gtlhbkkj
Зарегистрирован: 2019-09-20
Сообщения: 173
Репутация: +  2  -
Профиль   Отправить e-mail  

как придать Джанго форме красивый внешний вид?

почитываю Джанго документацию.
https://docs.djangoproject.com/en/3.0/topics/forms/

Задал класс форм ContactForm


В шаблоне вывел его в броузер


Получился неформатированный кал


Как можно эту форму отформатировать в пространстве, цвете, размере шрифтов ?
благодарю

Офлайн

#2 Фев. 19, 2020 05:30:29

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9992
Репутация: +  857  -
Профиль   Отправить e-mail  

как придать Джанго форме красивый внешний вид?

gtlhbkkj
Как можно эту форму отформатировать в пространстве, цвете, размере шрифтов ?
Надо записать в ней классы CSS прямо в шаблоне, а потом сделать снаружи CSS-файлы.
Вообще, это непростая вещь, там много всяких аспектов. Но обычно для оформления используют div и span блоки, в которые подключается форматирование через CSS. Таким образом ты даже не в саму форму пишешь класс и не в поле ввода пишешь класс, а пишешь классы у блоков div, в которые вложены сами формы и в которые вложены сами отдельные поля ввода. А бывает и туда надо класс писать (в блок), и туда (в форму, которая в блоке).

Для таких вещей открой какой-нибудь сайт вроде https://www.youtube.com , потом нажми в браузере F12 или открой консоль браузера другим способом и там перейди в инспектор, где видно все узлы документа. И там уже посмотришь, как они пакуют контент страницы в структуру из разных div'ов и span'ов. Практически каждая шпунька там упакована в свой блок только для того, чтобы потом просто отформатировать его через CSS-стили, которые лежат вообще в другом месте и подгружаются вверху документа.

В общем, Django не научит тебя верстать. Для этого надо изучать HTML, CSS и принятые концепции вёрстки (которых тоже там не одна).



Отредактировано py.user.next (Фев. 19, 2020 05:33:54)

Офлайн

#3 Фев. 19, 2020 13:44:28

gtlhbkkj
Зарегистрирован: 2019-09-20
Сообщения: 173
Репутация: +  2  -
Профиль   Отправить e-mail  

как придать Джанго форме красивый внешний вид?

py.user.next
Надо записать в ней классы CSS прямо в шаблоне, а потом сделать снаружи CSS-файлы.
то что форматирование получается HTMLом это понятно.
не понимаю следующее

Задал класс форм ContactForm


В шаблоне вывел его в броузер


форма имеет, например, 4 поля.
я бы хотел, например, вывести поле 1 слева наверху одним цветом и одним шрифтом
поле 2 - например справа другим шрифтом другим цветом
и так далее

ясно что этот результат можно получить, если не использовать джанго forms, а всю красоту в шаблоне прописать для каждого поля в отдельности или для групп полей.

А можно ли каким-то образом используя класс джанго forms получить такой же результат?
Я ведь передаю в шаблон свою форму в таком виде {{ form }} и Джанго выводит ее в своем формате по умолчанию.
откуда шаблон будет знать в каком виде я бы хотел видеть эту форму?
Правильно ли для получения красивой формы передавать шаблон форму в таком виде {{ form }}?
Как мне правильно задать запрос в поисковике, чтобы попасть на разьяснение этой темы?
благодарю вас

Офлайн

#4 Фев. 19, 2020 13:52:34

gtlhbkkj
Зарегистрирован: 2019-09-20
Сообщения: 173
Репутация: +  2  -
Профиль   Отправить e-mail  

как придать Джанго форме красивый внешний вид?

наверное это отвечает на мой вопрос?
“Django Forms Bootstrap”
https://django.fun/tutorials/django-i-formy-bootstrap-4/

Офлайн

#5 Фев. 19, 2020 14:17:42

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

как придать Джанго форме красивый внешний вид?

gtlhbkkj
Я обычно определял свой шаблон для форм в отдельном файле, а потом инклюдил этот файл с параметром
как-то так

form_template.html

 <form>
  {% for field in form %}
      ....
<form>

datail_view.html
 {% include "form_template.html" with form=form %}



Офлайн

#6 Фев. 19, 2020 14:35:24

gtlhbkkj
Зарегистрирован: 2019-09-20
Сообщения: 173
Репутация: +  2  -
Профиль   Отправить e-mail  

как придать Джанго форме красивый внешний вид?

FishHook
Я обычно определял свой шаблон для форм в отдельном файле, а потом инклюдил этот файл с параметром
как-то так
благодарю вас.
уже посмотрел Crispy
https://django-crispy-forms.readthedocs.io/en/latest/crispy_tag_forms.html
похоже что его сделали для особо тупых, чтобы они особо не напрягали мозги
должно мне подойти

Отредактировано gtlhbkkj (Фев. 19, 2020 14:37:43)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version