Django – skaliert von der Microsite bis zum Enterprise CMS
Django ist eigentlich kein Content Management System, sondern ein extrem skalierbares Web Framework mit Unterstützung für viele Datenbank-Systeme und Webserver. Mit Django werden ganze Content Management Systeme entwickelt.
Django ist ein äußerst flexibles und vielseitiges auf Python basierendes Framework, mit dessen Hilfe in sehr kurzer Zeit Blogs, Content Management Systeme und sehr große Websites entwickelt werden können. Django bringt von sich aus einen auf Python basierenden Webserver für Entwicklungszwecke mit und benötigt zunächst auch keinen Datenbankserver. Es lassen sich entweder ganz ohne Datenbank dynamische Webseiten entwickeln, oder man verwendet die Datei-basierte Datenbank SQLite (welches in Python 2.5 schon integriert ist). Ansonsten verwendet man einfach MySQL, PostgreSQL, Oracle oder SQLite – In Zukunft auch DB2.
Wenn man sich im Netz nach Django-basierenden Content Management Systemen umschaut, findet man fast ausschließlich Systeme, die für jede Website neu entwickelt worden sind. Dies ist auch das Ziel von Django: Ein System, welches in kürzester Zeit ganze Websites auf die Beine Stellt. Django skaliert extrem gut und bringt natürlich jede Menge Features für sehr große Sites mit (Skalierung auf mehreren Maschinen, Caching-Server usw.).
Ein besonderes Feature möchte ich hier nicht unterschlagen: Die vollautomatisch zu jeder Site dynamisch generierte Administrations-Oberfläche. Wenn man in etwa 20 bis 40 Zeilen Code das Modell eines kleinen Webprojekts geschrieben hat, wird automatisch das Administration-Interface erzeugt, mit dessen Hilfe die Artikel/Daten im system angelegt werden können. Noch während der Entwicklung des Designs des Backends für die User können Autoren schon das System mit Daten füttern. Nicht umsonst nennt sich Django (ins Deutsche übersetzt) >>Das Webframework für Perfektionisten mit Deadlines<<