Django und Bootstrap: Welche App wird empfohlen? [geschlossen]

70

Ich möchte Twitter's Bootstrap für eine kürzlich gestartete Django-App verwenden. Ich habe ziemlich viel Erfahrung mit Django, aber ich bin völlig neu in Bootstrap.

Wie gehe ich am besten vor? Gibt es bestimmte Boostrap-Apps für Django, die Sie empfehlen oder mit denen Sie Erfahrung haben?

Ich verstehe, dass ich Bootstrap direkt verwenden kann, ohne spezielle Bootstrap-spezifische Django-Apps. Ich habe jedoch auch gelesen, dass das Rendern von Formularen ohne ein wenig serverseitige Unterstützung nicht besonders gut funktioniert (z. B. das Rendern des Bootstrap-spezifischen CSS in das Formular-HTML).

Es scheint mehrere Projekte zu geben, wie z. B. knusprige Formulare, Django-Bootstrap-Toolkit usw. Wenn ich mir die Projektseiten ansehe, sehe ich unterschiedliche Aktivitäts- und Unterstützungsstufen. Wenn ich mich für eine davon entscheide, würde ich natürlich gerne eine auswählen, die eine gewisse Dynamik hat und daher eine gute Wahrscheinlichkeit hat, für eine Weile unterstützt und gewartet zu werden. Dies ist sehr wichtig. Selbst wenn die jeweilige App nicht über alle möglichen Funktionen verfügt oder etwas weniger flexibel ist, ist sie aufgrund von Support / Frische, Verfügbarkeit von Beispielen usw. möglicherweise immer noch eine gute Wahl.

Vielen Dank für Empfehlungen oder Feedback.

jbrendel
quelle

Antworten:

51

Ich habe verwendet django-bootstrap-toolkit- wie der Autor erklärt (unter Bezugnahme auf andere Django / Bootstrap-Integrations-Apps)

"Der Ansatz für Vorlagen-Tags und Filter schien richtig zu sein, aber Bootstrap bietet so viel mehr als nur Formulare."

Zusätzlich zu den Formularen (die so einfach sein können wie {% form|as_bootstrap %}diese App hilft sie bei der Paginierung, beim Einfügen statischer URLs in die Bootstrap-Mediendateien und einigen anderen Bits. Lesen Sietemplatetags/bootstrap-toolkit.py die vollständige Liste.

@dolan stellt fest, dass der django-bootstrap-toolkitEntwickler ein neues Projekt für die Bootstrap v3-Unterstützung empfiehlt django-bootstrap3. Ich habe das noch nicht ausprobiert, da ich seit Erscheinen von V3 kein neues Projekt gestartet habe, also YMMV.

Supervacuo
quelle
2
Guter Kommentar ... Bootstrap ist weit mehr als nur Formen.
Vahid Rafiei
1
Bisher funktioniert das Django-Bootstrap-Toolkit für mich gut.
Shannon -jj Behrens
2
Zu Ihrer Information: Der Entwickler des Django-Bootstrap-Toolkits empfiehlt ein separates Projekt für die Unterstützung von Bootstrap v3: github.com/dyve/django-bootstrap3
Dolan Antenucci
Supervacuo, was ist der Vorteil dieser Plugins gegenüber dem Importieren von Bootstrap und dem Hinzufügen der CSS-Klassen?
Alexander Suraphel
@AlexanderSuraphel Weniger tippen; Beispiele finden Sie in der django-bootstrap3Dokumentation: django-bootstrap3.readthedocs.org/en/latest/quickstart.html
Supervacuo
6

Ich habe in den letzten Monaten Django-Crispy-Formen mit Bootstrap verwendet und es war sehr nützlich. Formulare werden genau so gerendert, wie sie sollen. Wenn Sie jedoch ein benutzerdefiniertes Formular rendern, sollten Sie darauf vorbereitet sein, Ihre Formulare mithilfe von Code und nicht mit Vorlage zu definieren helpers.

Josh Smeaton
quelle
Danke für die Antwort. Ich habe gehört "Bootstrap macht mehr als nur Formulare!". Finden Sie knusprige Formen in irgendeiner Weise einschränkend und verhindern, dass Sie andere Bootstrap-Funktionen problemlos verwenden können? Oder ist "Formulare" Ihrer Erfahrung nach wirklich das einzige, für das Sie serverseitige Unterstützung für Bootstrap benötigen?
Jbrendel
@jbrendel Bootstrap besteht hauptsächlich aus CSS und HTML (mit einer Prise JS) - die meisten davon werden direkt von Ihren Vorlagen verarbeitet. Formulare generieren jedoch HTML in Python. Es gab ein GSOC-Projekt, das darauf abzielte, Formulare mithilfe von Vorlagen zu generieren, das jedoch nicht sehr gut vorangekommen ist. Daher sehe ich nur wirklich die Notwendigkeit von Hilfe bei Formularen - da das Definieren Ihrer Vorlagen ohnehin ein manueller Vorgang ist. Davon abgesehen habe ich mich nicht an andere serverseitige Bootstrap-Helfer gewandt, daher weiß ich nicht, wo sie helfen.
Josh Smeaton
6

Eine weitere zu berücksichtigende Option ist das Django-Bootstrap-Formular .

Ich fand knusprige Formen zu schwer für meine Bedürfnisse. Django-Bootstrap wird nicht mehr gepflegt. Ich habe versucht, django-bootstrap-toolkit und django-bootstrap-form, und obwohl es so aussieht, als ob django-bootstrap-toolkit mehr Funktionen hat, stellte ich fest, dass meine Anforderungen durch django-bootstrap-form erfüllt wurden. Um die Dinge einfach zu halten, habe ich mich für Letzteres entschieden und es nicht als mangelhaft empfunden (obwohl ich interessiert wäre, andere Meinungen über ihre relativen Vorzüge zu hören).

Zusätzlich zu django-bootstrap-form würde ich django-widget-tweaks empfehlen , mit denen Sie Ihren Formularen mithilfe von Vorlagenfiltern Klassen (und andere Attribute) hinzufügen können, z.

{{ form.field|add_class:"input-small" }}

Auf diese Weise können Sie die klassenbasierte Formatierung von Bootstrap aus verwenden und gleichzeitig die Präsentationslogik in der Vorlage beibehalten.

Symmetrisch
quelle