Voraussetzungen
Bevor Sie die Beispiele dieses Tutorials üben, müssen Sie die folgenden Aufgaben erledigen:
Richten Sie eine Django -App ein
A. Führen Sie den folgenden Befehl aus, um eine Django -App mit dem Namen zu erstellen filterapp.
$ python3 verwalten.PY StartApp FilterAppB. Führen Sie den folgenden Befehl aus, um den Benutzer zum Zugriff auf die Django -Datenbank zu erstellen. Wenn Sie den Benutzer zuvor erstellt haben, müssen Sie den Befehl nicht ausführen.
$ python3 verwalten.Py erzeugtC. Fügen Sie den App -Namen in die hinzu Installed_app Teil der py Datei.
Installed_apps = [D. Erstellen Sie einen Ordner mit dem Namen Vorlagen in der filterapp Ordner und setzen Sie die Vorlage Ort der App in der Vorlagen Teil der py Datei.
Vorlagen = [Erstellen Sie ein Modell für die Datenbanktabelle
Öffne das Modelle.py Datei aus der filterapp Ordner und fügen Sie das folgende Skript hinzu, um die Struktur von zu definieren Mitarbeiter Tische. Mitarbeiter Die Klasse wird definiert, um eine Tabelle mit dem Namen zu erstellen Mitarbeiter mit Name, Post, E -Mail, Abteilung, Und Beitrittsdatum Felder. Hier, Name, Post, Und Abteilung Felder speichern Charakterdaten, die Email Das Feld speichert die E -Mail -Adresse und die Beitrittsdatum Das Feld speichert Datumsdaten.
Modelle.py
# Modulmodul importierenLeiten Sie die Makemigrationen Befehl zum Erstellen einer neuen Migration basierend auf den von den Modellen vorgenommenen Änderungen.
$ python3 verwalten.PY Makemigrations FilterAppLeiten Sie die Wandern Befehl zum Ausführen der SQL -Befehle und zum Erstellen aller Tabellen in der Datenbank, die in der definiert sind Modelle.py Datei.
$ python3 verwalten.py migrierenÄndern Sie den Inhalt der Administrator.py Datei mit dem folgenden Inhalt. Hier, der Arbeitnehmer Die Klasse der Modelle wird mit verwendet das Register() Methode zur Anzeige der Anzeige Aufzeichnungen von Mitarbeitern Tabellen im Django Administration Dashboard.
Administrator.py
# Admin -Modul importierenFühren Sie die folgende URL aus, um die Django Admin -Anmeldeseite zu öffnen. Geben Sie den gültigen Benutzernamen und das gültige Passwort an, um die zu öffnen Django Administration Dashboard So greifen Sie auf die Datenbanktabellen zu.
Fügen Sie zwei oder mehr Mitarbeiterdatensätze ein, um den Filter auf die Daten anzuwenden. Hier werden fünf Datensätze eingefügt.
Erstellen die suchen.html Datei in der filterApp/templates/ Ordner mit dem folgenden Skript. Die Daten aus dem Mitarbeiter Die Tabelle wird in dieser Vorlagendatei angezeigt. für Schleife wird verwendet, um den Inhalt der zu lesen Object_List Variable, die aus der Ansichtsdatei übergeben wird. Der Name, Post, Und Abteilung Werte der Mitarbeiter Die Tabelle wird mit der Liste angezeigt.
suchen.html
emp.Name (emp.Post )
emp.Abteilung Abteilung
Öffne das Ansichten.py Datei aus der filterapp Ordner und ändern Sie den Inhalt der Datei mit dem folgenden Skript. Modell- und Vorlagennamen werden im Skript definiert.
Ansichten.py
# ListView -Modul importierenÄndern Sie den Inhalt der URLs.py Datei mit dem folgenden Inhalt. Im Skript das ''Searchemp'Pfad wird definiert, um das aufzurufen Suchbeschäftigung.As_view () Methode, mit der alle Daten und die gefilterten Daten der gesendet werden Mitarbeiter Tabelle zur Vorlagendatei.
URLs.py
# Admin -Modul importierenDie folgende Ausgabe wird angezeigt, ohne die Filterung für die folgende URL anzuwenden.
http: // localhost: 8000/serachemp
Filterdaten durch einfache Filterung
Fügen Sie die folgende Zeile am Ende des Ansichten.py Datei zum Filtern der Aufzeichnungen der Mitarbeiter Tabelle, wobei der Wert der Post Feld ist ''Buchhalter''.
# Basisfilterung anwendenDie folgende Ausgabe wird nach der Anwendung der Grundfilterung angezeigt.
Filterdaten mit mehreren Feldern
Fügen Sie die folgende Zeile am Ende des Ansichten.py Datei zum Filtern der Aufzeichnungen der Mitarbeiter Tabelle, wobei der Wert der Abteilung Feld ist ''Ht' Und die Email Feld ist '[email protected] '.
# Filterung mit mehreren Feldern anwendenDie folgende Ausgabe wird nach dem Auftragen mehrerer Filterung angezeigt.
Filterdaten mit Q -Objekt filtern
Fügen Sie die folgende Zeile am Ende des Ansichten.py Datei zum Filtern der Aufzeichnungen der Mitarbeiter Tabelle, wobei der Wert der Post Feld ist ''Manager'oder der Wert der Abteilung Feld ist ''Verkauf''.
# Filterung mit q -Objekten anwendenDie folgende Ausgabe wird nach Anwendung der Q -Objektfilterung angezeigt.
Filterdaten mithilfe der Filterverkettung
Fügen Sie die folgende Zeile am Ende des Ansichten.py Datei zum Filtern der Aufzeichnungen der Mitarbeiter Tabelle, wobei der Wert der Abteilung Das Feld wird zuerst überprüft und wenn es true zurückgibt, wird der Wert des Name Das Feld wird überprüft.
# Filterung durch Verketten anwendenDie folgende Ausgabe wird nach Anwendung der Filterverkettung angezeigt.
Abschluss
Die Daten können in Django auf vielfältige Weise basierend auf den Anwendungsanforderungen filtriert werden. In diesem Tutorial wurden vier verschiedene Filtermethoden erklärt, um die Grundlagen der Django -Filterung zu verstehen. Dies sind einfache Filterung, Mehrfachfilterung, Filterung mit Q -Objekt und Filterverkettung.