25.3 Erstellen eines neuen Django-Projekts 

Bevor wir mit Django arbeiten können, müssen wir einen Projektordner erstellen, der die Konfiguration unseres Projekts enthält.
Zu diesem Zweck liefert Django ein Tool namens django-admin.py, mit dessen Hilfe die Erzeugung eines neuen Projekts zum Kinderspiel wird. Sie müssen einfach in der Kommandozeile Folgendes eingeben:
$ django-admin.py startproject unser_projekt
Die Zeichenfolge unser_projekt ist dabei der gewünschte Name des neuen Projekts. Nach der erfolgreichen Ausführung von django-admin.py existiert eine neue Ordnerstruktur mit den Projektdateien auf der Festplatte (siehe Abbildung 25.2).
Abbildung 25.2 Ordnerstruktur eines frischen Django-Projekts
In der nachstehenden Tabelle sind die Zwecke der einzelnen Dateien erklärt:
| Dateiname | Zweck |
|
__init__.py |
Die Datei ist standardmäßig leer und nur deshalb notwendig, damit das Projekt als Python-Modul importierbar ist. Jedes Django-Projekt muss ein gültiges Python-Modul sein. |
|
manage.py |
Dieses Programm dient zur Verwaltung unseres Projekts. Mit ihm können wir beispielsweise die Datenbank aktualisieren oder das Projekt für die Fehlersuche ausführen. |
|
settings.py |
In dieser Datei sind alle Einstellungen für unser Projekt gespeichert. Dazu zählt insbesondere die Konfiguration der Datenbank. |
|
urls.py |
Legt fest, über welche Adressen die Seiten unseres Projekts erreichbar sein sollen. |
Nun können wir mit dem Projekt arbeiten.
Der Entwicklungswebserver
Das frische Projektskelett kann in diesem Zustand schon gestestet werden. Um die Entwicklung von Django-Anwendungen zu erleichtern, bietet das Framework einen einfachen Webserver an. Dieser Server überwacht ständig die Änderungen, die Sie am Code Ihrer Anwendung vornehmen, und lädt automatisch die veränderten Programmteile nach, ohne dass er dazu neu gestartet werden muss.
Den Entwicklungswebserver können Sie über das Verwaltungsprogramm manage.py starten, indem Sie den Parameter runserver übergeben. Bevor Sie den Befehl ausführen, müssen Sie in das Projektverzeichnis unser_projekt wechseln. Unter Windows entfällt das Kommando python zu Beginn des folgenden Beispiels.
$ python manage.py runserver Validating models... 0 errors found. Django version 0.96, using settings 'unser_projekt.settings' Development server is running at http://127.0.0.1:8000/ Quit the server with CONTROL-C.
Wie Sie der Ausgabe entnehmen können, ist der Entwicklungsserver unter der Adresse http://127.0.0.1:8000/ erreichbar. Die Seite sieht im Browser folgendermaßen aus (siehe Abbildung 25.3).
| Wichtig |
| Djangos Einwicklungswebserver ist ausschließlich für die Entwicklung von Webanwendungen gedacht und sollte niemals für eine öffentliche Seite benutzt werden. Verwenden Sie für den produktiven Einsatz Ihrer Webanwendungen »echte« Webserver wie beispielsweise den Apache-Webserver. Eine Anleitung zur Konfiguration des Apache mit Django finden Sie in der Django-Dokumentation. |
Abbildung 25.3 Ausgabe des noch leeren Projekts im Browser
Konfiguration des Projekts
Bevor wir an unserem Projekt arbeiten können, muss es konfiguriert werden. Dazu öffnen wir die Datei settings.py in einem Texteditor. Es handelt sich bei der Datei um ein einfaches Python-Programm, das Django über globale Variablen konfiguriert. Allerdings beinhaltet es auch sehr spezielle Einstellungen, die uns an dieser Stelle nicht interessieren.
Wir beschränken uns im ersten Schritt auf die Einstellungen, die die Datenbank von Django betreffen. Relativ weit am Anfang der Datei finden Sie einen Block, der folgendermaßen aussieht:
DATABASE_ENGINE = '' # 'postgresql_psycopg2', 'postgresql',
# 'mysql', 'sqlite3' or 'ado_mssql'.
DATABASE_NAME = '' # Or path to database file if using
# sqlite3.
DATABASE_USER = '' # Not used with sqlite3.
DATABASE_PASSWORD = '' # Not used with sqlite3.
DATABASE_HOST = '' # Set to empty string for localhost. Not
# used with sqlite3.
DATABASE_PORT = '' # Set to empty string for default. Not
# used with sqlite3.Zusammen mit den Kommentaren sollten diese Einstellungen selbsterklärend sein. Da SQLite standardmäßig mit Python ausgeliefert wird und daher bei der Verwendung von SQLite keine zusätzlichen Module installiert werden müssen, wird unser Beispielprojekt eine SQLite-Datenbank nutzen. Dazu setzen wir die beiden für SQLite relevanten Einstellungen DATABASE_ENGINE und DATABASE_NAME wie folgt:
DATABASE_ENGINE = 'sqlite3' DATABASE_NAME = r'C:\unser_projekt\datenbank.dat'
Außerdem sollten Sie die Sprache von Django auf die Gegebenheiten von Deutschland umstellen. Dies geschieht mit der Anpassung der TIME_ZONE- und LANGUAGE_CODE -Variable:
TIME_ZONE = 'Europe/Berlin' LANGUAGE_CODE = 'de-DE'
Damit sind die grundlegenden Einstellungen gemacht, und wir können uns an unsere erste Django-Applikation wagen.






bestellen





