Wymagania wstępne:
Przed ćwiczeniem scenariusza tego samouczka musisz wykonać następujące zadania.
Skonfiguruj aplikację Django:
Uruchom następujące polecenie, aby utworzyć aplikację Django o nazwie QueryApp.
$ Python3 Zarządzaj.PY StartApp QueryAppUruchom następujące polecenie, aby utworzyć użytkownika w celu uzyskania dostępu do bazy danych Django. Jeśli wcześniej utworzyłeś użytkownika, nie musisz uruchamiać polecenia.
$ Python3 Zarządzaj.PY CreateSuperuserDodaj nazwę aplikacji w Zainstalowany_app część Ustawienia.py plik.
Instalowane_apps = [Utwórz folder o nazwie szablony w środku QueryApp folder i ustaw szablon Lokalizacja aplikacji w Szablony część Ustawienia.py plik.
Szablony = [Utwórz model tabeli bazy danych:
Otworzyć modele.py plik z QueryApp folder i dodaj następujący skrypt, aby zdefiniować strukturę produkty tabele. Produkt Klasa jest zdefiniowana w celu utworzenia tabeli o nazwie produkty z nazwa, typ, marka, I cena Pola. Tutaj, Nazwa, typ, I marka pola będą przechowywać dane znaków i cena pole będzie przechowywać dane liczb całkowitych.
modele.py
# Importuj moduł modeliUruchom Makemigrations polecenie tworzenia nowej migracji na podstawie zmian wprowadzonych przez modele.
$ Python3 Zarządzaj.PY Makemigrations QueryAppUruchom migrować polecenie do wykonania poleceń SQL i utworzenia wszystkich tabel w bazie danych zdefiniowanych w modele.py plik.
$ Python3 Zarządzaj.Py migrujZmodyfikuj zawartość Admin.py Plik z następującą zawartością. Tutaj, Produkty modeli CLASs jest zarejestrowany za pomocą rejestr() metoda wyświetlania produkty Tabele w deski rozdzielczej administracyjnej Django.
Admin.py
# Importuj moduł administratoraUtwórz plik szablonu o nazwie Lista produktów.html w środku queryApp/szablony/ z następującym skryptem. Ten skrypt wyświetli wszystkie dane produkty Tabela w formie tabelarycznej z polem wyszukiwania. Użytkownik będzie mógł przeszukać poszczególne rekordy z tabeli produktów za pomocą formularza wyszukiwania. Do pętla jest używana w skrypcie do iteracji danych przekazywanych z wyświetlenia.py plik.
Lista produktów.html
ID | Nazwa | Marka | Cena |
---|---|---|---|
produkt.ID | produkt.nazwa | produkt.marka | style = "text-align: right"> $ produkt.cena |
Zmodyfikuj zawartość wyświetlenia.py Plik z następującym skryptem. Model i nazwy szablonów są zdefiniowane w Lista produktów klasa. get_querySet () Metoda klasy jest zdefiniowana w skrypcie w celu filtrowania danych na podstawie zawartości przesłanej przez pole wyszukiwania szablonu. Produkt.obiekty.Wszystko() Metoda zwraca wszystkie zapisy produkty tabela. wniosek.DOSTAWAĆ.Klucze() Metoda jest używana w skrypcie do sprawdzenia, czy dowolne dane są przesyłane przez formularz wyszukiwania. Jeśli ta metoda zwróci PRAWDA, a później wniosek.DOSTAWAĆ.Get („src”) Metoda służy do sprawdzenia, czy przesłana wartość jest pusta, czy nie. Jeśli ta metoda zwróci wartość nieustronną, wartość będzie przechowywana w zmiennej, Słowo kluczowe, i zostanie użyty do filtrowania danych na podstawie marka I typ pola z produkty tabela.
wyświetlenia.py
# Importuj moduł ListViewZmodyfikuj zawartość URL.py Plik z następującym skryptem. W scenariuszu ''SearchPro/'ścieżka jest zdefiniowana, aby wywołać Lista produktów.as_view () metoda, która wyśle wszystkie dane i przefiltrowane dane produkty tabela do pliku szablonu.
URL.py
# Importuj moduł administratoraDodaj rekordy do tabeli:
Otwórz stronę administracyjną Django i dodaj kilka rekordów do produkty Tabela, aby zastosować następnie QuerySet. Tutaj wstawiono pięć rekordów.
Wszystkie rekordy produktów z polem wyszukiwania zostaną wyświetlone w przeglądarce po wykonaniu następującego adresu URL.
http: // localhost: 8000/SearchPro
Wszystkie produkty szamponu wyświetlone, jeśli typ produktu ”szampon„Zostanie wyszukiwany w polu wyszukiwania.
Produkty z proszku mlecznego Świeże marka zostanie wyświetlona, jeśli marka produktu ”świeży„Zostanie wyszukiwany w polu wyszukiwania.
Wniosek:
Sposób filtrowania danych prostej tabeli bazy danych za pomocą QuerySet wyjaśnił w tym samouczku. Dane można filtrować na różne sposoby. Czytelnicy zrozumieją za pomocą zapytania do filtrowania lub wyszukiwania danych w przeglądarce po przeczytaniu tego samouczka.