„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Djangos Architektur verstehen: Das MTV-Muster.

Djangos Architektur verstehen: Das MTV-Muster.

Veröffentlicht am 02.11.2024
Durchsuche:758

Understanding Django’s Architecture: The MTV Pattern.

Django folgt dem MTV-Muster (Model-Template-View) für die Webentwicklung. Hier ist eine Aufschlüsselung der einzelnen Komponenten:

Modell: Definiert Ihre Datenstruktur und verwaltet die Interaktion mit der Datenbank, sodass Sie Daten speichern und abrufen können, ohne SQL-Abfragen manuell schreiben zu müssen.

Vorlage: Verantwortlich für die Darstellung von HTML und die Darstellung der Daten für den Benutzer. Sie schreiben HTML gemischt mit Django Template Language (DTL), um dynamische Inhalte anzuzeigen.

Ansicht: Fungiert als Geschäftslogikschicht. Es verbindet das Modell und die Vorlage, verarbeitet Benutzeranfragen, interagiert mit dem Modell und gibt eine Antwort zurück (häufig HTML, das aus der Vorlage gerendert wird).

Wie Djangos Request-Response-Zyklus funktioniert:

  • Ein Benutzer fordert eine Webseite an (über eine URL).
  • Django ordnet die URL einer Ansicht zu.
  • Die Ansicht ruft Daten vom Modell ab und übergibt sie an die Vorlage.
  • Die Vorlage rendert die Daten in HTML und sendet sie als Antwort an den Benutzer zurück.

Schritt 1: Erstellen Sie eine neue App in Django.
Sobald Sie Django eingerichtet haben (wie im vorherigen Artikel beschrieben), erstellen wir eine neue App in Ihrem Projekt.

Führen Sie diese Befehle aus:

cd mysite
python3 manage.py startapp core

Dadurch wird eine App namens core in Ihrem Mysite-Projekt erstellt. Ihre Dateistruktur sollte nun wie folgt aussehen:

.
├── core
│   ├── admin.py
│   ├── apps.py
│   ├── __init__.py
│   ├── migrations
│   │   └── __init__.py
│   ├── models.py
│   ├── tests.py
│   └── views.py
├── db.sqlite3
├── manage.py
└── mysite
    ├── asgi.py
    ├── __init__.py
    ├── settings.py
    ├── urls.py
    └── wsgi.py

Schritt 2: Registrieren Sie Ihre App in der Einstellungsdatei.
Um Django auf die neue App aufmerksam zu machen, müssen Sie sie zu INSTALLED_APPS in mysite/settings.py hinzufügen:

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'core',  # add this line
]

Schritt 3: Erstellen Sie eine Basisansicht.
Lassen Sie uns eine einfache Ansicht erstellen, die ein „Hello, World!“ zurückgibt. Nachricht.

Öffnen Sie „views.py“ in der Kern-App und fügen Sie den folgenden Code hinzu:

from django.http import HttpResponse

def learn(request):
    return HttpResponse("Hello, World!")

Schritt 4: URLs der Ansicht zuordnen.
Um über eine URL auf diese Ansicht zuzugreifen, müssen Sie sie in der Datei core/urls.py zuordnen. Erstellen Sie diese Datei, falls sie nicht existiert, und fügen Sie Folgendes hinzu:

from django.urls import path
from . import views

urlpatterns = [
    path('learn/', views.learn, name='learn'),
]

Fügen Sie als Nächstes die URLs der Kern-App in die Hauptdatei mysite/urls.py ein:

from django.contrib import admin
from django.urls import include, path

urlpatterns = [
    path('admin/', admin.site.urls),
    path('core/', include('core.urls')),  # include the core app URLs
]

Wenn Sie nun den Server ausführen und http://127.0.0.1:8000/core/learn/ besuchen, sollte „Hello, World!“ angezeigt werden. angezeigt.
Schritt 5: Vorlage erstellen und rendern

from django.shortcuts import render

def learn(request):
    context = {'name': 'Django'}
    return render(request, 'hello.html', context)

Diese Ansicht übergibt jetzt eine Variable (Name) an eine Vorlage namens hello.html.
Schritt 6: Erstellen Sie ein Vorlagenverzeichnis und eine HTML-Datei.
Erstellen Sie in Ihrer Kern-App einen Vorlagenordner und eine hello.html-Datei:

mkdir core/templates
touch core/templates/hello.html

Fügen Sie in hello.html den folgenden HTML-Code hinzu



    Hello Template

Hello, {{ name }}!

Wenn Sie die Lern-URL erneut aufrufen, sollte nun „Hallo, Django!“ angezeigt werden. im Browser.

Schritt 7: Erstellen Sie ein Basismodell.
Erstellen wir ein einfaches Post-Modell zum Speichern von Blog-Posts.

Fügen Sie in core/models.py den folgenden Code hinzu:

from django.db import models

class Post(models.Model):
    title = models.CharField(max_length=100)
    content = models.TextField()

    def __str__(self):
        return self.title

Dieses Postmodel hat zwei Felder: Titel und Inhalt. Die Methode __str__ stellt sicher, dass die Post-Objekte mit ihren Titeln im Django-Admin oder in der Shell angezeigt werden

Schritt 8: Anwenden des Modells auf die Datenbank.
Führen Sie die folgenden Befehle aus, um die entsprechende Tabelle in der Datenbank zu erstellen:

python3 manage.py makemigrations
python3 manage.py migrate

Django erstellt nun eine Datenbanktabelle für das Post-Modell.

Durch Befolgen dieser Schritte haben Sie erfolgreich eine einfache Django-App mit einem Modell, einer Ansicht und einer Vorlage erstellt. Sie können diese Grundlage nun erweitern, indem Sie weitere Funktionen hinzufügen, z. B. die Verarbeitung von Benutzereingaben, die Verbesserung des Designs und die interaktivere Gestaltung der App.

Freigabeerklärung Dieser Artikel ist abgedruckt unter: https://dev.to/vincenttommi/2-understanding-djangos-architecture-the-mtv-pattern-1gl?1 Bei Verstößen wenden Sie sich bitte an [email protected], um ihn zu löschen
Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3