Einführung
Django ist ein voll ausgestattetes Python-Web-Framework zur Entwicklung dynamischer Websites und Anwendungen. Mit Django können Sie schnell Python-Webanwendungen erstellen und sich dabei auf das Framework verlassen, um einen Großteil der Arbeit zu erledigen.
In diesem Leitfaden werden wir Django auf einem Ubuntu 22.04 Server installieren. Nach der Installation werden Sie ein neues Projekt starten, das als Grundlage für Ihre Website dient.
Verschiedene Methoden
Es gibt verschiedene Möglichkeiten, Django zu installieren, je nach Ihren Anforderungen und wie Sie Ihre Entwicklungsumgebung konfigurieren möchten. Diese haben unterschiedliche Vorteile, und eine Methode kann sich besser für Ihre spezifische Situation eignen als andere.
Einige der verschiedenen Methoden sind:
- Globale Installation aus Paketen: Die offiziellen Ubuntu-Repositorys enthalten Django-Pakete, die mit dem herkömmlichen
apt
-Paketmanager installiert werden können. Dies ist einfach, aber nicht so flexibel wie einige andere Methoden. Außerdem kann die Version, die in den Repositories enthalten ist, hinter den offiziellen Versionen des Projekts zurückbleiben. - Installation mit
pip
in einer virtuellen Umgebung: Sie können eine eigenständige Umgebung für Ihre Projekte erstellen, indem Sie Tools wievenv
undvirtualenv
verwenden. Eine virtuelle Umgebung ermöglicht es Ihnen, Django in einem Projektverzeichnis zu installieren, ohne das gesamte System zu beeinträchtigen, zusammen mit anderen projektspezifischen Anpassungen und Paketen. Dies ist in der Regel der praktischste und empfohlene Ansatz für die Arbeit mit Django. - Installation der Entwicklerversion mit
git
: Wenn Sie die neueste Entwicklerversion anstelle der stabilen Version installieren möchten, können Sie den Code aus dem Git-Repository beziehen. Dies ist erforderlich, um die neuesten Funktionen/Fixes zu erhalten und kann in Ihrer virtuellen Umgebung durchgeführt werden. Entwicklerversionen haben jedoch nicht die gleichen Stabilitätsgarantien wie stabilere Versionen.
Voraussetzungen
Bevor Sie beginnen, sollten Sie über einen nicht-root-Benutzer mit sudo-Berechtigungen auf Ihrem Ubuntu 22.04-Server verfügen. Um dies einzurichten, folgen Sie unserer Anleitung zum Einrichten eines Ubuntu 22.04-Initialservers.
Globale Installation aus Paketen
Wenn Sie Django über die Ubuntu-Repositorys installieren möchten, ist der Prozess sehr einfach.
Zuerst aktualisieren Sie Ihren lokalen Paketindex mit apt
:
Als nächstes überprüfen Sie, welche Version von Python Sie installiert haben. 22.04 wird standardmäßig mit Python 3.10 ausgeliefert, was Sie durch Eingabe überprüfen können:
Sie sollten eine Ausgabe wie diese sehen:
OutputPython 3.10.4
Installieren Sie als nächstes Django:
Sie können testen, ob die Installation erfolgreich war, indem Sie eingeben:
Output3.2.12
Dies bedeutet, dass die Software erfolgreich installiert wurde. Sie können auch bemerken, dass die Django-Version nicht die neueste stabile Version ist. Um mehr darüber zu erfahren, wie Sie die Software verwenden, springen Sie vor und lernen Sie, wie Sie ein Beispielprojekt erstellen.
Installation mit pip in einer virtuellen Umgebung
Der flexibelste Weg, Django auf Ihrem System zu installieren, ist in einer virtuellen Umgebung. Wir zeigen Ihnen, wie Sie Django in einer virtuellen Umgebung installieren, die wir mit dem venv
-Modul erstellen werden, das Teil der Standard-Python 3-Bibliothek ist. Dieses Tool ermöglicht es Ihnen, virtuelle Python-Umgebungen zu erstellen und Python-Pakete zu installieren, ohne den Rest des Systems zu beeinträchtigen. Sie können daher Python-Pakete pro Projekt auswählen, unabhängig von Konflikten mit den Anforderungen anderer Projekte.
Beginnen wir damit, den lokalen Paketindex zu aktualisieren:
Überprüfen Sie die Version von Python, die Sie installiert haben:
OutputPython 3.10.4
Als nächstes installieren wir pip
und venv
aus den Ubuntu-Repositories:
Jetzt können Sie jedes Mal, wenn Sie ein neues Projekt starten, eine virtuelle Umgebung dafür erstellen. Beginnen Sie damit, ein neues Projektverzeichnis zu erstellen und in dieses zu wechseln:
Erstellen Sie als nächstes eine virtuelle Umgebung im Projektverzeichnis mit dem python
-Befehl, der mit Ihrer Python-Version kompatibel ist. Wir nennen unsere virtuelle Umgebung my_env
, aber Sie sollten sie etwas beschreibendes nennen:
Dadurch werden eigenständige Versionen von Python und pip
in einer isolierten Verzeichnisstruktur innerhalb Ihres Projektverzeichnisses installiert. Es wird ein Verzeichnis mit dem von Ihnen gewählten Namen erstellt, das die Dateihierarchie enthält, in der Ihre Pakete installiert werden.
Um Pakete in die isolierte Umgebung zu installieren, müssen Sie diese aktivieren, indem Sie Folgendes eingeben:
Ihr Prompt sollte sich ändern, um anzuzeigen, dass Sie sich jetzt in Ihrer virtuellen Umgebung befinden. Es wird ungefähr so aussehen: (my_env)benutzername@hostname:~/neuesprojekt$
.
In Ihrer neuen Umgebung können Sie pip
verwenden, um Django zu installieren. Unabhängig von Ihrer Python-Version sollte pip
einfach als pip
bezeichnet werden, wenn Sie sich in Ihrer virtuellen Umgebung befinden. Beachten Sie auch, dass Sie nicht sudo
verwenden müssen, da Sie lokal installieren:
Sie können die Installation überprüfen, indem Sie Folgendes eingeben:
Output4.0.4
Beachten Sie, dass Ihre Version von der hier gezeigten Version abweichen kann.
Um Ihre virtuelle Umgebung zu verlassen, müssen Sie den Befehl deactivate
von überall im System ausgeben:
Ihre Eingabeaufforderung sollte wieder auf die herkömmliche Anzeige umschalten. Wenn Sie wieder an Ihrem Projekt arbeiten möchten, aktivieren Sie Ihre virtuelle Umgebung erneut, indem Sie in Ihr Projektverzeichnis zurückkehren und aktivieren:
Entwicklungsversion installieren mit Git
Wenn Sie eine Entwicklungsversion von Django benötigen, können Sie Django aus seinem Git-Repository herunterladen und installieren. Machen wir das innerhalb einer virtuellen Umgebung.
Zuerst aktualisieren wir den lokalen Paketindex:
Überprüfen Sie die Version von Python, die Sie installiert haben:
OutputPython 3.10.4
Installieren Sie dann pip
und venv
aus den offiziellen Repositories:
Der nächste Schritt ist das Klonen des Django-Repositorys. Zwischen den Veröffentlichungen wird dieses Repository aktuellere Funktionen und Fehlerkorrekturen haben, möglicherweise auf Kosten der Stabilität. Sie können das Repository in ein Verzeichnis namens ~/django-dev
in Ihrem Home-Verzeichnis klonen, indem Sie folgendes eingeben:
Wechseln Sie in dieses Verzeichnis:
Erstellen Sie eine virtuelle Umgebung mit dem python
-Befehl, der mit Ihrer installierten Python-Version kompatibel ist:
Aktivieren Sie es:
Als nächstes können Sie das Repository mit pip
installieren. Die Option -e
installiert im „editierbaren“ Modus, was erforderlich ist, wenn Sie aus der Versionskontrolle installieren:
Sie können überprüfen, ob die Installation erfolgreich war, indem Sie eingeben:
Output4.0.4.2
Nochmals, die angezeigte Version stimmt möglicherweise nicht mit dem hier Gezeigten überein.
Sie haben jetzt die neueste Version von Django in Ihrer virtuellen Umgebung.
Erstellen eines Beispielprojekts
Mit Django installiert, können Sie mit dem Aufbau Ihres Projekts beginnen. Wir werden erklären, wie Sie ein Projekt erstellen und es auf Ihrem Entwicklungsserver mit einer virtuellen Umgebung testen können.
Erstellen Sie zunächst ein Verzeichnis für Ihr Projekt und wechseln Sie in dieses Verzeichnis:
Erstellen Sie dann Ihre virtuelle Umgebung:
Aktivieren Sie die Umgebung:
Installieren Sie Django:
Um Ihr Projekt zu erstellen, können Sie django-admin
mit dem Befehl startproject
verwenden. Wir werden unser Projekt djangoproject
nennen, aber Sie können dies durch einen anderen Namen ersetzen. startproject
wird ein Verzeichnis innerhalb Ihres aktuellen Arbeitsverzeichnisses erstellen, das Folgendes enthält:
- A management script,
manage.py
, which you can use to administer various Django-specific tasks. - A directory (with the same name as the project) that includes the actual project code.
Um jedoch zu vermeiden, dass zu viele verschachtelte Verzeichnisse vorhanden sind, sagen wir Django, dass das Verwaltungsskript und das innere Verzeichnis im aktuellen Verzeichnis platziert werden sollen (beachten Sie den Endpunkt):
Um die Datenbank zu migrieren (in diesem Beispiel wird standardmäßig SQLite verwendet), verwenden wir das migrate
-Befehl mit manage.py
. Migrationen wenden alle Änderungen an Ihren Django-Modellen auf Ihr Datenbank-Schema an.
Um die Datenbank zu migrieren, geben Sie folgendes ein:
Sie werden eine Ausgabe wie folgt sehen:
OutputOperations to perform:
Apply all migrations: admin, auth, contenttypes, sessions
Running migrations:
Applying contenttypes.0001_initial... OK
Applying auth.0001_initial... OK
Applying admin.0001_initial... OK
Applying admin.0002_logentry_remove_auto_add... OK
Applying admin.0003_logentry_add_action_flag_choices... OK
Applying contenttypes.0002_remove_content_type_name... OK
Applying auth.0002_alter_permission_name_max_length... OK
Applying auth.0003_alter_user_email_max_length... OK
Applying auth.0004_alter_user_username_opts... OK
Applying auth.0005_alter_user_last_login_null... OK
Applying auth.0006_require_contenttypes_0002... OK
Applying auth.0007_alter_validators_add_error_messages... OK
Applying auth.0008_alter_user_username_max_length... OK
Applying auth.0009_alter_user_last_name_max_length... OK
Applying auth.0010_alter_group_name_max_length... OK
Applying auth.0011_update_proxy_permissions... OK
Applying auth.0012_alter_user_first_name_max_length... OK
Applying sessions.0001_initial... OK
Abschließend erstellen wir einen administrativen Benutzer, damit Sie die Django-Admin-Oberfläche verwenden können. Dies tun wir mit dem createsuperuser
-Befehl:
Sie werden nach einem Benutzernamen, einer E-Mail-Adresse und einem Passwort für Ihren Benutzer gefragt.
Ändern von ALLOWED_HOSTS in den Django-Einstellungen
Um Ihre Anwendung erfolgreich zu testen, müssen Sie eine der Direktiven in den Django-Einstellungen ändern.
Öffnen Sie die Einstellungsdatei, indem Sie Folgendes eingeben:
Im Inneren, suchen Sie die ALLOWED_HOSTS
-Anweisung. Diese definiert eine Liste von Adressen oder Domainnamen, die verwendet werden dürfen, um eine Verbindung mit der Django-Instanz herzustellen. Eine eingehende Anfrage mit einem Host-Header, der nicht in dieser Liste steht, wird eine Ausnahme auslösen. Django erfordert, dass Sie dies setzen, um eine bestimmte Klasse von Sicherheitslücken zu verhindern.
In den eckigen Klammern listen Sie die IP-Adressen oder Domainnamen auf, die mit Ihrem Django-Server verbunden sind. Jedes Element sollte in Anführungszeichen aufgeführt werden, wobei separate Einträge durch ein Komma getrennt sind. Wenn Sie Anfragen für eine gesamte Domäne und alle Subdomänen möchten, fügen Sie einen Punkt am Anfang des Eintrags hinzu:
Wenn Sie fertig sind, speichern Sie die Datei und verlassen Sie Ihren Editor.
Testen des Entwicklungsservers
Sobald Sie einen Benutzer haben, können Sie den Django-Entwicklungsserver starten, um zu sehen, wie ein frisches Django-Projekt aussieht. Sie sollten dies nur für Entwicklungszwecke verwenden. Wenn Sie bereit sind, bereitstellen, stellen Sie sicher, dass Sie Die Richtlinien von Django zur Bereitstellung sorgfältig befolgen.
Bevor Sie den Entwicklungsserver ausprobieren, stellen Sie sicher, dass Sie den entsprechenden Port in Ihrer Firewall öffnen. Wenn Sie dem initialen Servereinrichtungsleitfaden gefolgt sind und UFW verwenden, können Sie den Port 8000
öffnen, indem Sie folgendes eingeben:
Starten Sie den Entwicklungsserver:
Besuchen Sie die IP-Adresse Ihres Servers gefolgt von :8000
in Ihrem Webbrowser:
http://your_server_ip:8000
Sie sollten etwas sehen, das so aussieht:
Um auf die Administrationsbenutzeroberfläche zuzugreifen, fügen Sie Ihrem URL /admin/
hinzu:
http://your_server_ip:8000/admin/
Dies bringt Sie zu einem Anmeldebildschirm:
Wenn Sie den Benutzernamen und das Passwort für den Administrator eingeben, die Sie gerade erstellt haben, erhalten Sie Zugriff auf den Hauptadministrationsbereich der Website:
Für weitere Informationen zur Arbeit mit der Django-Administrationsbenutzeroberfläche siehe “So aktivieren und verbinden Sie die Django-Administrationsbenutzeroberfläche.”
Wenn Sie mit dem Durchsuchen der Standardwebsite fertig sind, können Sie den Entwicklungsserver beenden, indem Sie STRG-C
in Ihrem Terminal eingeben.
Das Django-Projekt, das Sie erstellt haben, bietet die strukturelle Grundlage für das Entwerfen einer umfassenderen Website. Weitere Informationen zum Erstellen Ihrer Anwendungen und Anpassen Ihrer Website finden Sie in der Django-Dokumentation.
Abschluss
Sie sollten jetzt Django auf Ihrem Ubuntu 22.04-Server installiert haben, was die wichtigsten Tools bereitstellt, die Sie benötigen, um leistungsstarke Webanwendungen zu erstellen. Sie sollten auch wissen, wie Sie ein neues Projekt starten und den Entwicklungsserver starten können. Die Nutzung eines vollständigen Web-Frameworks wie Django kann die Entwicklung beschleunigen und es Ihnen ermöglichen, sich nur auf die einzigartigen Aspekte Ihrer Anwendungen zu konzentrieren.
Wenn Sie weitere Informationen zur Arbeit mit Django wünschen, einschließlich eingehender Diskussionen zu Themen wie Modellen und Ansichten, sehen Sie sich bitte unsere Django-Entwicklungsserie an.