Django-Tutorial: Funktionen Architektur & Geschichte
โก Intelligente Zusammenfassung
Django ist eine kostenlose Open-Source-Software. Python Webframework, das auf dem Model-View-Template-Muster basiert und die schnelle Entwicklung sicherer, skalierbarer, datenbankgestรผtzter Websites durch wiederverwendbare Komponenten, eine automatische Admin-Oberflรคche und ein umfassendes Design ermรถglicht.

Django ist die Basis einiger der grรถรten Websites im Web, wรคhrend keeping Schnelle und organisierte Entwicklung im Alltag. Bevor wir uns mit den Funktionen, der Architektur und der Geschichte befassen, beginnen die folgenden Abschnitte mit den Grundlagen von Web-Frameworks und den Besonderheiten von Django.
Zusammenfassung des Django-Tutorials
Dieses Django-Tutorial behandelt alle grundlegenden Themen von Grund auf. Sie lernen darin Konzepte wie die Definition von Django, seine Geschichte, seine Funktionen, die Eigenschaften des Django-Frameworks, die Komponenten von Django, seine Vor- und Nachteile und vieles mehr.
Bevor wir Django lernen, sollten wir Folgendes verstehen:
Was ist ein Webframework?
Ein Web-Framework ist eine Codebibliothek, die Ihnen hilft, eine flexible, skalierbare und wartungsfreundliche dynamische Website, Webanwendung oder einen Webdienst zu erstellen. Zu den verschiedenen Web-Frameworks gehรถren beispielsweise Zend fรผr PHP. Ruby on Rails fรผr Ruby und andere.
Was ist Django?
Django ist ein Web-Entwicklungsframework fรผr Python Dieses Framework bietet Standardmethoden fรผr eine schnelle und effektive Website-Entwicklung. Sein Hauptziel ist die Erstellung komplexer, datenbankgestรผtzter Websites. Es unterstรผtzt Sie beim Erstellen und Pflegen hochwertiger Webanwendungen und ermรถglicht einen reibungslosen und zeitsparenden Entwicklungsprozess fรผr eine zรผgige Umsetzung.
Warum Django? Hauptvorteile von Django
Hier sind die Hauptvorteile von Django:
- Django ist einfach einzurichten und auszufรผhren. Es bietet eine Vielzahl von Optionen fรผr den Einstieg.
- Es bietet eine sofort einsatzbereite Benutzeroberflรคche fรผr administrative Tรคtigkeiten.
- Es ermรถglicht mehrsprachige Websites durch die Nutzung seines integrierten Internationalisierungssystems.
- Es hilft Ihnen, auch groรe Verkehrsaufkommen schnell zu bewรคltigen.
- Django wird zur Entwicklung von Content-Management-Systemen aller Art, sozialen Netzwerken sowie wissenschaftlichen Rechenplattformen verwendet.
- Django hilft Ihnen bei der Durchfรผhrung von End-to-End-Anwendungstests.
- Es hilft Ihnen dabei, Ihre API mit einer HTML-Ausgabe zu dokumentieren.
- Das REST-Framework bietet umfassende Unterstรผtzung fรผr verschiedene Authentifizierungsprotokolle.
- Es bietet Berechtigungen und Drosselungsrichtlinien.
- Es wird hรคufig zur Ratenbegrenzung von API-Anfragen eines einzelnen Benutzers verwendet.
Geschichte von Django
| Jahr | Milestone |
|---|---|
| 2003 | Das Projekt wurde von Adrian Holovaty und Simon Willison als internes Projekt bei der Zeitung Lawrence Journal-World ins Leben gerufen. |
| Juli 2005 | Es wurde im Juli 2005 unter dem Titel โDjangoโ verรถffentlicht, benannt nach dem Jazzgitarristen Django Reinhardt. |
| Juni 2008 | Es wurde erklรคrt, dass eine Django-Software Foundation (DSF) wรผrde Django beibehalten. |
| 29 Juli 2009 | Django 1.1 wurde mit Funktionen wie Aggregaten und transaktionsbasierten Tests verรถffentlicht. |
| 17. Mai 2010 | Django 1.2 wurde verรถffentlicht. Das Update bot Funktionen wie mehrere Datenbanken und ein E-Mail-Backend, und es wurden Verbesserungen fรผr Sitzungen und Cookies vorgenommen. |
| Mรคrz 23 2011 | Mit Version 1.3 wurden Funktionen wie klassenbasierte Ansichten und statische Dateien eingefรผhrt. |
| Mรคrz 23 2012 | Die Version 1.4 wurde mit neuen Funktionen wie Zeitzonen und In-Browser-Tests verรถffentlicht. |
| Februar 26 2013 | Die Version 1.5 wurde mitgeliefert Python 3 Unterstรผtzung und konfigurierbare Benutzermodellfunktionen. |
| 6. November 2013 | Die Version 1.6 enthielt Funktionen fรผr Datenbanktransaktionsmanagement und Verbindungspooling. |
| 2 September 2014 | Die Version 1.7 enthielt neue Funktionen wie das Laden von Anwendungen, Migrationen und Konfiguration. |
| 1 April 2015 | Native Unterstรผtzung wurde fรผr mehrere Template-Engines bereitgestellt. |
| 1 Dec 2015 | In Version 1.9 wurde eine automatische Passwortvalidierungsfunktion eingefรผhrt. |
| 1 August 2016 | In Version 1.10 ist die Volltextsuche fรผr PostgreSQL wurde gestartet. |
| 4 April 2017 | Version 1.11 war die letzte Version, die dies unterstรผtzte. Python 2.7 |
| 2 Dec 2017 | Version 2.0 wurde die erste Python Nur 3-teilige Version erhรคltlich. |
| 1 August 2018 | Version 2.1 enthielt Funktionen zur Unterstรผtzung der Modellberechtigung โAnzeigenโ. |
| 2021 | Die Unterstรผtzung fรผr Django 3.0 wurde entfernt und die Unterstรผtzung fรผr Django 3.2 hinzugefรผgt. |
In diesem Django-Tutorial fรผr Anfรคnger lernen wir nun die Funktionen von Django kennen.
Eigenschaften von Django
Nachfolgend sind die Funktionen von Django aufgefรผhrt:
- Hilft Ihnen dabei, Muster fรผr die URLs in Ihrer Bewerbung.
- Einfach, aber leistungsstark URL System.
- Integriertes Authentifizierungssystem.
- Eine objektorientierte Programmiersprachendatenbank, die erstklassige Datenspeicherung und -abfrage bietet.
- Die automatische Admin-Oberflรคche ermรถglicht das Hinzufรผgen, Bearbeiten und Lรถschen von Elementen. Sie kรถnnen das Admin-Panel Ihren Bedรผrfnissen entsprechend anpassen.
- Das Cache-Framework beinhaltet mehrere Cache-Mechanismen.
In diesem Django-Framework-Tutorial lernen wir nun die Eigenschaften von Django kennen.
Eigenschaften von Django
Hier sind die Hauptmerkmale von Django:
- Locker verbunden โ Django hilft Ihnen dabei, jedes Element seines Stacks von den anderen unabhรคngig zu machen.
- Less Code โ Gewรคhrleistet eine effektive Entwicklung.
- Nicht wiederholt โ Alles sollte genau an einem Ort entwickelt werden, anstatt es immer wieder zu wiederholen.
- Schnelle Entwicklung โ Django bietet eine schnelle und zuverlรคssige Anwendungsentwicklung.
- Konsistentes Design โ Django zeichnet sich durch ein klares Design aus und erleichtert die Einhaltung bewรคhrter Webentwicklungspraktiken.
Als nรคchstes lernen wir in diesem Django-Anfรคnger-Tutorial die Architektur von Django kennen.
Django ArchiTextur: MVC und MVT
Nachfolgend finden Sie eine detaillierte Architektur von Django:
Django Architektur
MVC-Muster
Wenn wir รผber Anwendungen mit Benutzeroberflรคche (Web oder Desktop) sprechen, meinen wir รผblicherweise die MVC-Architektur. Das MVC-Muster basiert auf Modell, Ansicht und Controller.
Das Modell definiert die Datenstruktur und kรผmmert sich um die Abfrage der Datenbank.
Das Ansehen Definiert, welche Daten prรคsentiert werden sollen und gibt eine HTTP-Antwort zurรผck.
Das Controller ist der Teil der Anwendung, der die Benutzerinteraktion verarbeitet.
Django MVC-MVT-Muster
Das Model-View-Template (MVT)-Architekturmuster unterscheidet sich grundlegend vom MVC-Muster. Der Hauptunterschied besteht darin, dass Django den Controller (den Softwarecode, der die Interaktionen zwischen Model und View steuert) selbst verwaltet. Das Template ist eine HTML-Datei, die mit einer Django Template Language (DTL)-Datei kombiniert wird.
Das folgende Diagramm zeigt, wie alle Komponenten des MVT-Musters miteinander interagieren, um eine bestimmte Benutzeranfrage zu bedienen.
MVT Architektur
Wie im obigen Diagramm dargestellt, fordert ein Benutzer eine Ressource von Django an. Django fungiert als Controller und prรผft, ob die Ressource verfรผgbar ist. URL.
Besitzt das URL Bei der Verwendung von Maps wird eine Ansicht aufgerufen, die mit dem Modell und der Vorlage interagiert. Django antwortet dem Benutzer und sendet eine Vorlage als Antwort.
In dieser Django-Tutorialreihe fรผr Anfรคnger lernen wir nun die Komponenten von Django kennen.
Komponenten von Django
Form
Django verfรผgt รผber eine leistungsstarke Formularbibliothek, die das Rendern von Formularen als HTML รผbernimmt. Die Bibliothek hilft bei der Validierung รผbermittelter Daten und deren Konvertierung in Python Typen.
Authentifizierung
Es verwaltet Benutzerkonten, Gruppen, Cookie-basierte Benutzersitzungen und vieles mehr.
Administrator
Es liest Metadaten in Ihren Modellen, um eine robuste Schnittstelle bereitzustellen, die zum Verwalten von Inhalten auf Ihrer Website verwendet werden kann.
Internationalisierung
Django bietet Unterstรผtzung fรผr die รbersetzung von Texten in verschiedene Sprachen sowie fรผr die lรคnderspezifische Formatierung von Datumsangaben, Uhrzeiten, Zahlen und Zeitzonen.
Sicherheit
Django bietet Schutzmechanismen gegen die folgenden Angriffe:
- Cross-Site Request Forgery (CSRF)
- Cross-Site-Skripting
- SQL-Injection
- Clickjacking
- Remote-Codeausfรผhrung
Berรผhmte Unternehmen, die Django verwenden
Hier sind einige Unternehmen, die Django verwenden:
- Bitbucket
- Disqus
- NASA
- PBS (รffentlicher Rundfunkdienst)
- Mozilla
- The Washington Post berichtet
- Die New York Times
- Los Angeles Times
- The Guardian
- National Geographic
- Discovery Channel
Nachteile der Verwendung von Django
Hier sind einige Nachteile der Verwendung von Django:
- Ein einzelner Prozess kann nicht mehrere Anfragen gleichzeitig bearbeiten.
- Django ist ein sehr monolithisches Tool.
- Die Komponenten werden gemeinsam bereitgestellt, was zu Verwirrung fรผhren kann.
- Um mit Django arbeiten zu kรถnnen, sind Kenntnisse des gesamten Systems erforderlich.
- Dadurch werden die Komponenten von Webanwendungen eng miteinander verknรผpft.
- Fรผr kleinere Aufgaben mรผssen Sie langwierige Programmierungen durchfรผhren.


