Концепции

Помощники формы

Самым большим преимуществом этой библиотеки являются FormHelper и макеты. Преимущество этих инструментов в том, что они позволяют вам создавать формы с большей частью кодирования на Python, а не на HTML. Мы настойчиво советуем вам изучить и освоить примеры в документации FormHelper.

Не повторяйте себя

Было написано, что если вы делаете что-то дважды в коде, вы должны обернуть это в функцию или метод. Этот проект родился из желания не переписывать похожие формы несколько раз в рамках одного проекта. Так же, как мы используем Django ORM, чтобы не писать простые запросы снова и снова, для нашего здравомыслия и качества кода выгодно не писать <form></form> 30 раз в рамках одного проекта.

Проблема создания формы таким образом несколько раз заключается в том, что в ней возможны ошибки. Как насчет скрытых полей? Что если вы забудете токен `{% csrf_token %}}? Что если вы неправильно зададите метод формы?

Думайте о django-crispy-forms как об ORM, он обрабатывает мелкие детали, чтобы вы могли сосредоточиться на общей картине вашего проекта - бизнес-логике, которая управляет вашим сайтом и с которой, вероятно, гораздо интереснее иметь дело, чем с крошечными особенностями форм.

Раздел 508

Несколько лет назад конгресс США определил Section 508 как средство обеспечения соблюдения технологий, предоставляемых или приобретаемых для правительства, которые соответствуют ряду спецификаций, чтобы люди с ограниченными возможностями могли использовать эти технологии. К сожалению, спецификация обычно не применяется к коммерческим продуктам, не используемым правительством США, и многие проекты правительства США уклоняются от спецификации.

Однако следовать Разделу 508 (и спецификациям Консорциума Всемирной паутины (W3C) Web Accessibility Initiative (WAI) - это правильно. Не помешает ознакомиться с этими спецификациями.

Тем временем, django-crispy-forms предоставляет средства для легкого отображения форм, соответствующих стандарту Section 508. Насколько это здорово?

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