Часто задаваемые вопросы

Технический

Отображение столбцов в макете bootstrap

Конечно, вы можете отображать поля формы внутри колонок, точно так же, как вы бы сделали это в стандартной форме bootstrap, вы можете сделать это и в макете bootstrap, см. example.

Общий

Почему стоит использовать django-crispy-forms, а не другое приложение

Ну, я явно предвзято отношусь к ответу на этот вопрос. Но я однажды answered it at StackOverflow.

Как все это началось?

В декабре 2008 года, пока Daniel Greenfeld работал в NASA’s Science Mission Directorate, его команда начала использовать Django и Pinax. Возникла необходимость сделать все формы в Pinax Section 508 совместимыми, и мысль о том, чтобы перебрать все формы и переписать {{ form }} как блок {% for field in form %} со всей логикой шаблонов, казалась слишком большой работой.

Поэтому с помощью Katie Cunningham, James Tauber и Jannis Leidel Дэниел взял документацию Django по формам, объединил ее с отличной библиотекой css/javascript Uni-Form Драгана Бабича и создал вездесущий фильтр as_uni_form. После этого исправление всех форм в Pinax, чтобы они соответствовали разделу 508, было простым делом.

Незадолго до PyCon 2009 Джеймс Таубер предложил API {% uni_form form helper %}, где можно было тривиально создавать формы без написания HTML.

На PyCon 2009 Яннис Лейдель помог Даниэлю выпустить релиз 0.3 django-uni-form на PyPI. Также на этом PyCon проект переехал из Google Code на Github.

Примерно с января 2011 года проект был не очень активен, проблемы на Github и форки накапливались. В это время Miguel Araujo нашел django-uni-form и ему понравилась концепция его архитектуры. Он начал работать в форке проекта, пытаясь собрать некоторые старые патчи. Примерно в марте 2011 года, после разговоров с Даниэлем, он получил право коммита в репозитории проекта, восстановив ветку dev. Затем последовали релизы 0.8.0, 0.9.0, и проект более чем удвоил число наблюдателей на Github.

К концу 2011 года Мигель и Даниэль согласились с необходимостью переименования проекта. Так как CSS-фреймворк uni-form больше не был единственным доступным вариантом, а название сбивало с толку пользователей. Так родился django-crispy-forms, названный Audrey Roy. Сейчас проект активно поддерживается и возглавляется Miguel Araujo.

Насколько быстро работает django-crispy-forms

Производительность при рендеринге форм обычно является практически спорным вопросом в Django, потому что большинство проблем со скоростью можно решить с помощью соответствующего использования кэш-движка Django. Шаблоны и особенно рендеринг форм обычно являются последними вещами, о которых стоит беспокоиться, когда вы пытаетесь увеличить производительность.

Тем не менее, поскольку мы заботимся о создании бережливого и быстрого кода, ведется работа по ускорению и измерению производительности этой библиотеки. Это среднее время рендеринга 1000 форм с последним кодом django-crispy-forms на Dell Latitude E6500 Intel Core 2 Duo @ 2.53GHz.

В производственных средах необходимо активировать кэширование шаблонов, см. раздел Установка django-crispy-forms.

Метод

Время с кэшированием шаблонов

Простой Django

0.915469169617 сек.

|crispy фильтр

4.23220916295 сек

{% crispy %} тег

4.53284406662 сек

Какие версии Python он поддерживает?

Поддерживаемые версии включают Python 2.6.x, 2.7.x, Python 3.3.x. Если вам нужна большая обратная совместимость, django-crispy-forms ниже 1.3 поддерживает 2.5.x, а django-uni-form 0.7.0 поддерживает Python 2.4.x.

Какие версии Django это поддерживает?

Поддерживаемые версии включают Django 1.3 и выше. Версии django-crispy-forms ниже 1.3 поддерживают Django 1.2.x. Если вам нужна поддержка более ранних версий, вам нужно использовать django-uni-form 0.7.0.

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