Mit der Popularität der Python-Sprache hat sich das Django-Framework zu einem beliebten Webentwicklungs-Framework entwickelt. Die umfangreichen Funktionen und die Fähigkeit des Django-Frameworks, die Entwicklungseffizienz zu verbessern, locken Entwickler in Scharen dazu. In diesem Artikel werden einige Einführungskenntnisse in das Django-Framework eingeführt und einige fortgeschrittene Programmierkenntnisse vermittelt, um Anfängern zu helfen, die Verwendung von Django besser zu verstehen und zu beherrschen.
Das Django-Framework ist ein Open-Source-Webframework, das auf der Python-Sprache basiert. Seine Designphilosophie ist „realistisch, einfach und praktisch“, basiert hauptsächlich auf dem MVC-Designmuster (Model-View-Controller) und bietet vollständige Webentwicklungsfunktionen, einschließlich Datenbankschnittstelle, URL-Routing, Formularverarbeitung und Vorlagenrendering. und Benutzerauthentifizierung usw.
Django-Installation
Bevor wir Django verwenden, müssen wir zuerst Django installieren. Sie können pip verwenden, um Django zu installieren: Führen Sie einfach den Befehl pip install Django aus.
Die Grundstruktur von Django
Django ist in mehrere Komponenten unterteilt, darunter Modell, Ansicht und Vorlage. Sie sind wie folgt definiert:
URL-Konfiguration für Django
Die URL-Konfiguration ist die Grundlage für die Überwachung aller HTTP-Anfragen und deren Weiterleitung an die entsprechenden Ansichten. In Django können Sie URLs in der Datei urls.py des Projekts konfigurieren, zum Beispiel:
from django.urls import path from . import views urlpatterns = [ path('', views.index, name='index'), path('about/', views.about, name='about'), ]
Das Obige ist ein einfaches URL-Konfigurationsbeispiel. Es definiert zwei URLs: eine ist die Homepage des Stammverzeichnisses und die andere ist die About-Seite von /about/. Der Pfad sendet die Anfrage an die Ansichtsfunktionen index() und about() in der Datei „views.py“. Die Ansichtsfunktionen werden im nächsten Abschnitt definiert.
Djangos Ansichtsfunktionen
In Django sind Ansichtsfunktionen Codes, die auf Benutzeranfragen reagieren. Sie erstellen HttpResponse-Objekte basierend auf dem Pfad in der URL-Konfiguration. Die Form der Ansichtsfunktion ist wie folgt:
from django.http import HttpResponse def index(request): return HttpResponse("Hello, World!")
Das Obige ist ein einfaches Beispiel für die Ansichtsfunktion index(). Es antwortet auf HTTP-Anfragen und gibt eine „Hello, World!“-Zeichenfolge zurück.
Djangos Vorlagen
Djangos Vorlagen sind Codes, die zum Definieren von Webseitenstilen verwendet werden. Sie ermöglichen es Ihnen, Python-Code in HTML einzubetten, um dynamische Webseiten zu erstellen. Vorlagendateien werden im Verzeichnis project/app/templates/ gespeichert. Hier ist ein Beispiel für eine Vorlage:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>{{ title }}</title> </head> <body> <p>{{ content }}</p> </body> </html>
In Vorlagen wird {{ }} verwendet, um Blöcke von Python-Code anzugeben, in denen auf Variablen zugegriffen und Bedingungen und Schleifen ausgeführt werden können. Im obigen Beispiel werden Titel- und Inhaltsvariablen in der Ansichtsfunktion an die Vorlage übergeben, um Titel und Absätze dynamisch zu generieren.
Djangos Modell
Djangos Modell ist der Code, der zur Definition der Interaktion zwischen Datenstrukturen und Datenbanken verwendet wird. Sie ermöglichen Ihnen die einfache Arbeit mit Datenbankeinträgen auf pythonische Weise. Modelldefinitionen werden in der Datei app/models.py gespeichert. Hier ist ein Beispiel für ein Modell:
from django.db import models class Book(models.Model): title = models.CharField(max_length=200) author = models.CharField(max_length=200) pub_date = models.DateField() def __str__(self): return self.title
Im obigen Beispiel haben wir ein Buchmodell definiert, das über die Attribute „Titel“, „Autor“ und „Veröffentlichungsdatum“ verfügt. Die Funktion __str__() definiert die String-Darstellung des Modells. Dieses Modell verwendet Djangos Standard-SQLite-Datenbank zur Speicherung. Alternativ können Sie auch andere Datenbanken wie MySQL verwenden.
Erweiterte Programmiertipps für Django
Django unterstützt die Verarbeitung statischer Dateien wie CSS, JavaScript und Bilder. Fügen Sie die folgende Zeile in der Datei „settings.py“ hinzu:
STATIC_URL = '/static/' STATICFILES_DIRS = [ os.path.join(BASE_DIR, "static"), '/var/www/static/', ] STATIC_ROOT = '/var/www/static_files/'
In /templates/my_template.html können Sie diese Codezeile einfügen:
{% load static %} <link rel="stylesheet" type="text/css" href="{% static 'my_style.css' %}">
Mit der obigen Codezeile kann die Stildatei „my_style.css“ aus der statischen Datei geladen werden Ordner.
Django bietet ein Benutzerauthentifizierungssystem, mit dem Sie einfach eine rollenbasierte Zugriffskontrolle implementieren und sicherstellen können, dass Benutzer beim Zugriff auf geschützte Seiten ordnungsgemäß authentifiziert werden. Um diese Funktion nutzen zu können, müssen Sie zunächst Folgendes aus dem Django.contrib.auth-Modul importieren:
from django.contrib.auth.decorators import login_required from django.contrib.auth import authenticate, login as auth_login, logout as auth_logout
Anschließend können Sie die geschützte Ansicht mit dem @loginrequired-Dekorator markieren und die Funktionen „Authentifizierung“, „Anmelden“ und „Abmelden“ für die An- und Abmeldung verwenden Verfahren.
Django verfügt über ein Test-Framework, mit dem Sie Testfälle schreiben und sicherstellen können, dass Ihre Anwendung unter allen Umständen ordnungsgemäß funktioniert. Um Testfälle zu schreiben, erstellen Sie eine Datei „tests.py“ und importieren Sie die TestCase-Klasse von Django. Hier ist ein Beispiel für einen Testfall:
from django.test import TestCase from django.urls import reverse class MyAppTests(TestCase): def test_index(self): response = self.client.get(reverse('index')) self.assertEqual(response.status_code, 200)
Im obigen Beispiel haben wir eine TestClass namens MyAppTests erstellt und einen Testfall test_index hinzugefügt. Wir verwenden das Clientobjekt von Django, um die Anfrage zu simulieren und sicherzustellen, dass ein HTTP 200-Antwortcode zurückgegeben wird.
Zusammenfassung
Django Framework ist ein leistungsstarkes Webentwicklungsframework, das ein vollständiges und benutzerfreundliches Toolset für die schnelle Entwicklung von Webanwendungen bietet. Mit den in diesem Artikel vorgestellten Grundkonzepten und fortgeschrittenen Programmiertechniken können Sie ganz einfach Django-Webanwendungen erstellen und ein tiefes Verständnis für die Verwendung von Django erlangen.
Das obige ist der detaillierte Inhalt vonVerwendung von Django in Python: vom Anfänger bis zum fortgeschrittenen Programmieren. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!