Django-de

Django Dokumentation

Wie installiert man Django

Diese Dokumentation gilt für Djangos Entwicklerversion, die zum Teil erhebliche Unterschiede zur letzten veröffentlichen Version aufweist.

Dieses Dokument hilft dir, Django zu installieren und in Betrieb zu nehmen.

Python installieren

Da Django ein Python Web Framework ist, benötigt es Python (Version 2.3 oder neuer).

Lade dir Python unter http://www.python.org herunter. Wenn du Linux oder Mac OS X verwendest, ist es vermutlich bereits installiert.

Installiere Apache und mod_python

Wenn du mit Django nur ein bisschen herumexperimentieren möchtest, überspringe dieses Kapitel einfach, denn Django enthält einen Mini-Web-Server, den du zum Testen verwenden kannst. Folglich musst du Apache nicht installieren bevor du dein Django-Projekt in Betrieb nehmen möchtest.

Wenn du Django im Produktivbetrieb einsetzen möchtest, verwende Apache mit mod_python. mod_python ist ähnlich zu mod_perl — es bindet Python in Apache ein und lädt Python-Code in den Arbeitsspeicher sobald der Server startet. Dort bleibt er, solange der Apache-Prozess besteht, was zum einem signifikanten Performance-Gewinn gegenüber anderen Ansätzen führt. Stelle sicher, dass du Apache installiert und das mod_python-Modul aktiviert hast. Django benötigt Apache 2.x mit mod_python 3.x.

Information zur Konfiguration von mod_python findest du in Wie verwendet man Django mit mod_python.

Du kannst mod_python aus irgendeinem Grund nicht verwenden? Kein Problem: Django hält sich an die WSGI-Spezifikation und kann deshalb auf einer Vielzahl von Serverplattformen eingesetzt werden. Mehr Information hierzu findest du auf der Server-Arrangements-Wikiseite.

Django und deine Datenbank

Wenn du Djangos Datenbank-API verwenden möchtest, solltest du zunächst sicherstellen, dass dein Datenbank-Server läuft. Django kann mit PostgreSQL, MySQL, Oracle und SQLite zusammenarbeiten, wobei SQLite keinen eigenständigen Datenbank-Server benötigt.

Zusätzlich müssen entsprechende Datenbank-Schnittstellen für Python installiert sein.

  • Wenn du PostgreSQL verwendest, brauchst du das psycopg-Paket. Hier unterstützt Django sowohl Version 1 als auch 2. (Wenn du Djangos Datenbank-Schnittstelle konfigurierst, verwende entweder postgresql für Version 1 oder postgresql_psycopg2 für Version 2.)

    Wenn du Django unter Windows verwendest, schau dir die inoffizielle kompilierte Version für Windows an.

  • Wenn du MySQL verwendest, brauchst du MySQLdb (Version 1.2.1p2 oder neuer). Hier solltest du dir zudem die Anmerkungen für das MySQL-Backend ansehen.

  • Wenn du SQLite zusammen mit Python 2.3 oder 2.4 verwendest, benötigst du pysqlite (Version 2.0.3 oder neuer). Python 2.5 unterstützt SQLite schon bei Auslieferung und benötigt kein zusätzliche Bibliothek.

  • Für Oracle brauchst du cx_Oracle (Version 4.3.1 oder neuer). Auch hier solltest du einen Blick auf die entsprechenden Anmerkungen für das Oracle-Backend werfen.

Wenn du Djangos manage.py syncdb verwenden willst, um für deine Modelle entsprechende Datenbank-Tabellen automatisch erzeugen zu lassen, musst du sicherstellen, dass Django die Berechtigung hat, Tabellen in deiner Datenbank zu erstellen und zu ändern. Wenn du planst, die Tabellen händisch zu erstellen, benötigt Django lediglich die SELECT-, INSERT-, UPDATE- und DELETE-Berechtigungen. Für manche Datenbanken braucht Django während syncdb die ALTER TABLE-Berechtigung, danach jedoch nicht mehr.

Solltest du Djangos Test-Framework verwenden, um Datenbank-Abfragen zu testen, musst du Django auch erlauben, eine Datenbank zu erstellen.

Entferne alle alten Django-Versionen

Wenn du von einer alten Django-Version auf eine neuere wechselst, musst du die alte Django-Version vom System entfernen, bevor du die neue installierst.

Wenn du Django mittels setup.py install installiert hast, entferne einfach das django-Verzeichnis aus deinen Python-site-packages.

Wenn du Django aus einem Python-Egg installiert hast, entferne die Django-.egg-Datei sowie den Verweis darauf aus einer Datei mit dem Namen easy-install.pth. Diese Datei sollte ebenfalls in deinem site-packages-Verzeichnis liegen.

Wo sind meine site-packages?

Der Speicherort des site-packages-Ordners hängt sowohl vom verwendeten Betriebssystem als auch vom Installationsverzeichnis von Python ab. Um den Speicherort der site-packages auf deinem System herauszufinden, führe folgenden Befehl aus:

python -c "from distutils.sysconfig import get_python_lib; print get_python_lib()"

(Dieser Befehl sollte in einer Kommandozeilen-Eingabe und nicht innerhalb des Python-Kommandozeileninterpreters ausgeführt werden.)

Installiere Django

Wie du nun Django installierst, hängt sehr davon ab, ob du ein Paket installieren möchtest, dass dir zum Beispiel von deinem Betriebssystem zur Verfügung gestellt wird, ob du einen offiziellen Release heruntergeladen hast oder ob du die aktuelle Entwicklerversion ausgecheckt hast.

Eines haben alle diese Methoden gemein: Sie sind einfach.

Django mit deinem Betriebssystem installieren

In den Betriebssystem-spezifischen Anmerkungen findest du eine Auflistung aller Plattformen/Betriebssysteme, die offiziell über Django-Pakete bzw. Django-Installer verfügen. Pakete, die von deinem Betriebssystem bereitgestellt werden, ermöglichen normalerweise eine einfache Installation von Abhängigkeiten sowie ein einfacheres Aktualisieren deiner Installation.

Einen offiziellen Release installieren

  1. Lade den aktuellen Release von unsere Download-Seite herunter.
  2. Entpacke die heruntergeladene Datei (z.B. mit tar xzvf Django-NNN.tar.gz, wobei NNN für die Versionsnummer des aktuellen Releases steht). Solltest du Windows verwenden, kannst du hierfür das Kommandozeilen-Tool bsdtar_ oder ein graphisches Tool wie z.B. 7-zip verwenden.
  3. Wechsle in das Verzeichnis, das durch Schritt 2 erzeugt wurde (z.B. cd Django-NNN).
  4. Wenn du Linux, Mac OS X oder eine andere Unix-Variante verwendest, führe sudo python setup.py install in einer Kommandozeile aus. Wenn du Windows verwendest, öffne eine Eingabeaufforderung mit Administrator-Rechten und führe setup.py install aus.

Diese Befehle installieren Django in das site-packages-Verzeichnis deiner Python-Installation.

Die Entwicklerversion installieren

Wenn du in der Lage sein willst, dein Django von Zeit zu Zeit mit den letzten Bug-Fixes und Verbesserungen zu versehen, folge folgender Anleitung:

  1. Stelle sicher, dass du Subversion installiert hast und dass du es von der Kommandozeile aus ausführen kannst. (Gib svn help in der Kommandozeile ein, um dies zu überprüfen.)

  2. Lade Djangos Hauptentwicklungs-Branch herunter:

    svn co http://code.djangoproject.com/svn/django/trunk/ django-trunk
    
  3. Als nächstes stelle sicher, dass der Python-Interpreter Django laden kann. Hierfür gibt es verschiedene Wege. Einer der einfachsten Wege unter Linux, Mac OS X und anderen Unix-ähnlichen Systemen ist die Verwendung eines symbolischen Links:

    ln -s `pwd`/django-trunk/django SITE-PACKAGES-DIR/django
    

    (In der oberen Zeile ersetze SITE-PACKAGES-DIR durch den Pfad deines site-packages-Verzeichnisses (vgl. “Wo sind meine site-packages?”) .)

    Alternativ kannst du auch deine PYTHONPATH-Umgebungsvariable ändern, sodass sie auch den django-trunk-Ordner enthält. Dies stellt vermutlich die einfachste Lösung unter Windows dar, da es hier keine symbolischen Links gibt. (Umgebungsvariablen können unter Windows in der Systemsteuerung definiert werden.)

    Inwiefern betrifft das Apache und mod_python?

    Wenn du dich zum Ändern des PYTHONPATH entschlossen hast, musst du diese Änderung auch in der Apache-Konfiguration vornehmen, sobald du dein Projekt in Betrieb nehmen willst. Hierfür setze den PythonPath in deiner Apache-Konfigurationsdatei.

    Weitergehende Information hierzu findest du natürlich in unserer Wie verwendet man Django mit mod_python-Dokumentation.

  4. Auf Unix-ähnlichen Systemen erzeuge einen symbolischen Link zur Datei django-trunk/django/bin/django-admin.py in einem Verzeichnis, das Teil deines System-Pfades ist (wie zum Beispiel /usr/local/bin):

    ln -s `pwd`/django-trunk/django/bin/django-admin.py /usr/local/bin
    

    Dies erlaubt dir von nun an, einfach django-admin.py anstelle des absoluten Pfades zu dieser Datei in einer Kommandozeile einzugeben, unabhängig davon in welchem Verzeichnis du dich gerade befindest.

    Unter Windows erreichst du dies, indem du django-trunk/django/bin/django-admin.py irgendwo in deinen Systempfad kopierst, zum Beispiel nach C:\Python24\Scripts.

Du muss nicht python setup.py install ausführen, da du die äquivalenten Aktionen bereits mit den Schritten 3 und 4 durchgeführt hast.

Wenn du deine Django-Installation auf den neuesten Stand bringen möchtest, führe einfach svn update innerhalb des django-trunk-Verzeichnisses aus. Dadurch lädt Subversion automatisch alle Änderungen herunter.