Controller-Vorlagenmodell
Genau wie es den Model View Controller (MVC) gibt, arbeitet Django mit Model Template Controller oder Model Template View oder MTV zusammen, wenn wir es mit etwas Bekanntem verknüpfen möchten. Dies ist eine alternative Implementierung von Django auf der MVC. Die Entwickler des Frameworks wollten nicht einfach nur eine Struktur starr, wenn nicht, dass sie eine schnelle und dynamische Entwicklung wollten, denn wenn Dinge passieren müssen, müssen sie schnell erledigt werden.
Um dies zu verstehen, wollen wir uns ansehen, was die einzelnen Teile unseres MTV bewirken .
Modell
Das Modell verwaltet alles, was der Logik der Datenbank und der Struktur unserer Anwendung entspricht. Auf diese Weise kapseln wir die Regeln unseres Geschäfts und die Struktur unserer Anwendung.
Ansehen
Die Ansichten in Django haben sehr wenig mit dem klassischen MVC-Paradigma zu tun, da Sie ihre Funktionen mit den Controllern so kombinieren, dass in Django eine Ansicht Dateneingaben akzeptiert und je nach Logik der Anwendung Daten und Informationen darstellen kann zeigen sie nach dem Modell.
Die Ansichten sind als Standard-Python-Funktionen definiert und werden über vom Benutzer angegebene URLs aufgerufen. Wie bereits erwähnt, können die Ansichten direkt mit dem Modell interagieren, um CRUD- Operationen so auszuführen , wie dies bei einer direkten Verbindung mit dem erforderlich ist Modell
Vorlage oder Vorlage
Die Ansicht ist dafür verantwortlich, zu bestimmen, was gemäß den ausgeführten Aktionen angezeigt werden soll, und unsere Vorlage bestimmt, wie diese Informationen angezeigt werden. Django stellt uns eine Vorlagensprache zur Verfügung, mit deren Hilfe wir den HTML-Code mit den Daten generieren können, die angezeigt werden Obwohl es sehr eng mit Python verbunden ist, ist es nicht erforderlich, es gründlich zu kennen, sodass wir einen UI-Ingenieur haben können, der Python nicht kennt, aber Vorlagen für unsere Django-Anwendung entwickelt.
Trotz alledem ist die Django- Template-Engine nicht das einzige, mit dem wir arbeiten können, da wir die Macht haben, eine andere kompatible Engine zu wählen, wenn wir dies wünschen.
Sehen wir uns unten ein Bild an, das ein wenig den Zyklus veranschaulicht, der dem MTV-Muster entspricht:
Wie wir sehen können, ist die Ansicht unser Vermittler zwischen dem, was wir in gewisser Weise zeigen werden, und dem, was wir in unserer internen Struktur in der Datenbank haben.
Was diese 3 Teile verbindet, die wir gesehen haben, ist die URL, durch die unsere Anwendung entscheidet, welche Ansicht verwendet wird, und so können wir die eine oder andere Vorlage anzeigen. Zuerst scheint es, dass sie der MVC sehr ähnlich ist, aber die Wie Django das umsetzt, ist alles andere als dasselbe.