Django-Tutorial für Anfänger: Funktionen, Architektur & Geschichte

Zusammenfassung des Django-Tutorials

Dieses Django-Tutorial behandelt alle grundlegenden Themen von Grund auf. In diesem Tutorial lernen Sie Konzepte wie „Was ist Django?“, „Geschichte von Django“, „Funktionen von Django“, „Eigenschaften des Django-Frameworks“, „Komponenten von Django“, „Vor- und Nachteile“ und vieles mehr.
Bevor wir Django lernen, sollten wir Folgendes verstehen:

Was ist ein Webframework?

Ein Webframework ist eine Codebibliothek, die Ihnen beim Aufbau eines flexiblen, skalierbaren und wartbaren Frameworks hilft. dynamische Website, Web-App und Webdienste. Verschiedene Web-Frameworks sind Zend für PHP, Ruby on Rails für Ruby usw.

Was ist Django?

Django ist ein Web-Entwicklungsframework für Python das Standardmethoden für eine schnelle und effektive Website-Entwicklung bietet. Das Hauptziel dieses hochrangigen Webframeworks ist die Erstellung komplexer datenbankgestützter Websites. Es hilft Ihnen bei der Erstellung und Wartung hochwertiger Webanwendungen. Es ermöglicht Ihnen, den Entwicklungsprozess reibungslos und zeitsparend zu gestalten, um eine schnelle Entwicklung zu ermöglichen.

Warum Django? Hauptvorteile von Django

Hier sind die Hauptvorteile von Django:

  • Django ist einfach einzurichten und auszuführen. Es bietet vielfältige Einstiegsmöglichkeiten
  • Es bietet eine gebrauchsfertige Benutzeroberfläche für administrative Aktivitäten
  • Es ermöglicht mehrsprachige Websites durch die Verwendung seines integrierten Internationalisierungssystems
  • Hilft Ihnen, den enormen Verkehrsanforderungen schnell gerecht zu werden
  • Django wird zum Aufbau aller Arten von Content-Management-Systemen, sozialen Netzwerken sowie wissenschaftlichen Computerplattformen verwendet.
  • Django unterstützt Sie bei der Bereitstellung von End-to-End-Anwendungstests
  • Hilft Ihnen, Ihre API mit einer HTML-Ausgabe zu dokumentieren
  • Das REST Framework bietet umfangreiche Unterstützung für mehrere Authentifizierungsprotokolle
  • 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 Adian Holovaty und Simon Willison als internes Projekt bei der Zeitung Lawrence Journal-World gestartet
Juli 2005 Es erschien im Juli 2005 als „Django“, benannt nach dem Jazzgitarristen Django Reinhard
Juni 2008 Deklariert, dass es sich um eine Django-Software handelt Foundation (DSF) würde Django beibehalten.
29 Juli 2009 Die Django-Version 1.1 wurde mit Funktionen wie Aggregaten und transaktionsbasierten Tests veröffentlicht.
17. Mai 2010 Django Version 1.2 wurde veröffentlicht. Das Update bietet Funktionen wie mehrere Datenbanken, Implementierung eines E-Mail-Backends und Verbesserungen für Sitzungen und Cookies.
März 23 2011 In der Version 1.3 wurden Funktionen wie klassenbasierte Ansichten und statische Dateien eingeführt
März 23 2012 Version 1.4 mit neuen Funktionen wie Zeitzonen und In-Browser-Tests gestartet
Februar 26 2013 Version 1.5 enthält Python 3 Unterstützung konfigurierbarer Benutzermodellfunktionen.
6. November 2013 Die Version 1.6 verfügt über DB-Transaktionsmanagement und Verbindungspooling-Funktionen.
2 September 2014 Version 1.7 verfügte über neue Funktionen wie Anwendungslast, Migrationen und Konfiguration
1 April 2015 Native Unterstützung für mehrere Template-Engines.
1 Dec 2015 In Version 1.9 wurde die automatische Passwortvalidierungsfunktion eingeführt.
1 August 2016 In Version 1.10 Volltextsuche nach PostgreSQL ins Leben gerufen.
4 April 2017 Version 1.11 wird die letzte Version sein, die unterstützt Python 2.7
2 Dec 2017 Version 2.0 wird die erste reine Python 3-Release-Version.
1 August 2018 Version 2.1 verfügt über eine Funktion zur Unterstützung der Berechtigung „Ansicht“ des Modells.
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, Muster für die URLs in Ihrer Anwendung zu definieren
  • Einfaches, aber leistungsstarkes URL-System
  • Integriertes Authentifizierungssystem
  • Objektorientierte Programmiersprachendatenbank, die erstklassige Datenspeicherung und -abruf bietet
  • Die automatische Admin-Schnittstellenfunktion ermöglicht das Hinzufügen, Bearbeiten und Löschen von Elementen. Sie können das Admin-Panel nach Ihren Wünschen anpassen.
  • Das Cache-Framework verfügt über mehrere Cache-Mechanismen.

In diesem Tutorial zum Django-Framework lernen wir nun die Eigenschaften von Django kennen.

Eigenschaften von Django

Hier sind die Hauptmerkmale von Django:

  • Lose gekoppelt – Django hilft Ihnen, jedes Element seines Stapels unabhängig von den anderen zu machen.
  • Less Code- Sorgt für eine effektive Entwicklung
  • Nicht wiederholt – Alles sollte an genau einer Stelle entwickelt werden, anstatt es noch einmal zu wiederholen
  • Schnelle Entwicklung – Django's bietet eine schnelle und zuverlässige Anwendungsentwicklung.
  • Konsistentes Design – Django behält ein klares Design bei und erleichtert die Einhaltung der besten 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
Django Architektur

MVC-Muster

Wenn wir über Anwendungen sprechen, die eine Benutzeroberfläche (Web oder Desktop) bereitstellen, sprechen wir normalerweise über die MVC-Architektur. Das MVC-Muster basiert auf Modell, Ansicht und Controller.

Die Modell definiert die Datenstruktur und kümmert sich um die Abfrage der Datenbank.

Die Anzeigen Definiert, welche Daten präsentiert werden sollen und gibt eine HTTP-Antwort zurück.

Die Controller ist der Teil der Anwendung, der die Benutzerinteraktion abwickelt.

Django MVC-MVT-Muster

Das Model-View-Template (MVT) ist ein anderes Konzept als MVC. Der Hauptunterschied zwischen diesen beiden Architekturmustern besteht darin, dass Django selbst den Controller-Teil verwaltet (Softwarecode, der die Interaktionen zwischen Modell und Ansicht steuert). Die Vorlage ist eine HTML-Datei, die mit der Django Template Language-Datei gemischt ist, die auch DTL genannt wird.

Das unten dargestellte Diagramm zeigt, wie alle Komponenten des MVT-Musters miteinander interagieren, um spezifisch auf eine Benutzeranfrage zu reagieren.

Django ArchiTextur: MVC und MVT

MVT Architektur

Wie im obigen Diagramm zu sehen ist, fordert ein Benutzer eine Ressource für Django an. Django fungiert als Controller und prüft die verfügbare Ressource in der URL.

Bei URL-Maps wird eine Ansicht aufgerufen, die mit Modell und Vorlage interagiert. Django antwortet dann dem Benutzer und sendet als Antwort eine Vorlage.

In dieser Reihe mit Django-Tutorials 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 usw.

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 Text in verschiedene Sprachen sowie lokalspezifische Formatierung von Daten, Uhrzeiten, Zahlen und Zeitzonen.

Sicherheit

Django bietet Schutz vor den folgenden Angriffen:

  • Cross-Site Request Forgery (CSRF)
  • Cross-Site-Skripting
  • SQL-Injection
  • Clickjacking
  • Remote-Codeausführung

Berühmte Unternehmen, die Django verwenden

Hier sind Unternehmen, die Django verwenden:

  • Bit Bucket
  • DISKUSSION
  • NASA
  • PBS (Öffentlicher Rundfunkdienst)
  • Pinterest
  • Instagram
  • Mozilla
  • The Washington Post berichtet
  • NY Times
  • LA Times
  • Der Guardian National Geographic
  • Discovery Channel

Nachteile der Verwendung von Django

  • Ein Prozess kann nicht mehrere Anfragen gleichzeitig verarbeiten.
  • Django ist ein sehr monolithisches Werkzeug.
  • Komponenten werden zusammen bereitgestellt, was zu Verwirrung führen kann.
  • Für die Arbeit mit Django sind Kenntnisse des gesamten Systems erforderlich
  • Sorgt dafür, dass Webanwendungskomponenten eng miteinander verbunden sind
  • Für kleinere Aufgaben müssen Sie langwierige Programmierungen durchführen.

Zusammenfassung

  • Django ist ein Webentwicklungsframework für Python Dies bietet eine Standardmethode für die schnelle und effektive Website-Entwicklung.
  • Django wurde 2003 von Adian Holovaty und Simon Willison als internes Projekt der Zeitung Lawrence Journal-World ins Leben gerufen
  • Django hilft Ihnen, Ihre API mit einer HTML-Ausgabe zu dokumentieren.
  • Mit Django können Sie das Admin-Panel an Ihre Bedürfnisse anpassen.
  • Django hilft Ihnen, jedes Element seines Stapels unabhängig von den anderen zu machen.
  • Der Hauptunterschied zwischen den Architekturmustern MVC und MVT besteht darin, dass Django den Controller-Teil selbst verwaltet.
  • Wesentliche Komponenten der Django-Architektur sind: Formular, Authentifizierung, Verwaltung, Internationalisierung, Sicherheit.
  • Bitbucket, DISQUS, Nasa, Pinterest, Instagram, Mozilla usw. verwenden Django
  • Der größte Nachteil von Django besteht darin, dass es nicht mehrere Anfragen gleichzeitig verarbeiten kann.