Jak używać znacznika inkluzyjnego Django

Jak używać znacznika inkluzyjnego Django
Django Framework wykorzystuje różne typy szablonów do prezentacji danych aplikacji. Interfejs administratora Django używa niestandardowego znacznika szablonu. Wygląd tych elementów interfejsu, takich jak przyciski, pola itp., są takie same dla wszystkich stron. Django Developer może zdefiniować niestandardowy znacznik szablonu i filtrować w zakresie, w jakim silnik szablonu i nowy znacznik szablonu można użyć za pomocą % custom_tag %. Tag szablonu, który służy do wyświetlania danych poprzez renderowanie innego szablonu, nazywa się znacznikiem włączenia. Sposób użycia znacznika włączenia do szablonu Django jest pokazany w tym samouczku.

Wymagania wstępne:

Przed ćwiczeniem scenariusza tego samouczka musisz wykonać następujące zadania.

A. Zainstaluj wersję Django 3+ na Ubuntu 20+ (najlepiej)
B. Utwórz projekt Django
C. Uruchom serwer Django, aby sprawdzić, czy serwer działa poprawnie lub nie.

Skonfiguruj aplikację Django:

A. Uruchom następujące polecenie, aby utworzyć aplikację Django o nazwie InclusionTagapp.

$ Python3 Zarządzaj.PY startApp InclusionTagapp

B. Uruchom 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 CreateSuperuser

C. Dodaj nazwę aplikacji w Zainstalowany_app część Ustawienia.py plik.

Instalowane_apps = [

„InclusionTagapp”
]

D. Utwórz folder o nazwie szablony w środku InclusionTagapp folder i ustaw szablon Lokalizacja aplikacji w Szablony część Ustawienia.py plik.

Szablony = [

… .
„Dirs”: ['/home/fahmida/django_pro/inclusiontagapp/szablony']],
… .
,
]

Wdrożenie znacznika włączenia w Django:

Tworzyć TemplateTags folder wewnątrz InclusionTagapp teczka. Następnie utwórz plik Python o nazwie InclusionTag.py z następującym skryptem. Moduł szablonu jest importowany do skryptu, aby użyć znacznika włączenia. Lista liczb równych zostanie wygenerowana po wywołaniu display_even_numbers () funkcja tego skryptu. Wyjście tego skryptu zostanie wyświetlone w wyświetlacz.html plik, który został utworzony w następnym etapie tego samouczka.

InclusionTag.py

# Moduł importu szablonu
z szablonu importu Django
# Utwórz obiekt biblioteki ()
rejestr = szablon.Biblioteka()
# Zdefiniuj plik szablonu dla znacznika włączenia
@rejestr.Inclusion_tag („Wyświetl.html ')
# Deklaruj funkcję, aby znaleźć liczby parzyste w zakresie
def display_even_numbers (a, b):
# Deklaruj pustą listę
liczba = []
# Iteruj pętlę, aby znaleźć równą liczbę między A i B
bo w zakresie (a, b):
# Sprawdź, czy numer jest nawet lub nie
Jeśli i % 2 == 0:
# Dodaj numer na liście, jeśli jest nawet
numer.Dodatek (i)
# Zwróć listę do wyświetlacza.plik HTML
return „wyjście”: liczba

Utwórz plik HTML o nazwie wyświetlacz.html w środku szablony folder i dodaj następujący skrypt. Wartości listy zwrócone przez znacznik włączenia są odczytywane przez pętlę w skrypcie.

wyświetlacz.html



<br>Testowanie tagu włączenia<br>



    % dla Val w wyjściu %

  1. val

  2. % endfor %


Następnie utwórz kolejny plik HTML o nazwie IncusionTag.html w środku szablony folder i dodaj następujący skrypt. W tym skrypcie zawartość InclusionTag wykonana w poprzedniej części tego samouczka jest ładowana, a display_even_number () Funkcja jest wywoływana z dwoma wartościami argumentów, 10 i 20. Ta funkcja utworzy listę liczb równych między 10 a 20 i zwróci listę do wyświetlacz.html plik.

InclusionTag.html



<br>Przykład znacznika włączenia Django<br>



Lista liczb równych od 10 do 20


% obciążenie InclusionTag %
% display_even_numbers 10 20 %


Zmodyfikuj widoki.plik py z następującym skryptem do załadowania znacznika włączenia do wymaganego pliku szablonu. Gdy wywołana zostanie funkcja inclusiontag () tego skryptu, wyświetli to InclusionTag.html plik, który załaduje InclusionTag i zadzwonić display_even_numbers () funkcjonować.

wyświetlenia.py

# Importuj moduł renders
z Django.KRÓTKI IMPORTOWANE RENDER
"
Deklaruj funkcję renderowania InclusionTag.plik HTML
Aby załadować znacznik włączenia
"
def InclusionTag (żądanie):
Return Render (żądanie, „InclusionTag.html ”)

Zmodyfikuj URL.py plik projektu Django i dodaj następujący skrypt. Po uruchomieniu serwera Django, jeśli ścieżka, Inktag, zostanie dodane po podstawowym adresie URL, InclusionTag () funkcja zostanie wywołana z pliku widoku. Ta funkcja uczyni InclusionTag.html plik. Ten plik HTML załaduje znacznik włączenia, który zadzwoni display_even_numbers () z argumentami. Ta funkcja zwróci listę liczb równych na podstawie wartości argumentów i wyświetli je w wyświetlacz.html plik.

URL.py

# Ścieżka importu
z Django.URL ścieżki importu
# Import InclusionTag View
z InclusionTagapp.Wyświetla import InclusionTag
# Zdefiniuj ścieżkę, aby wywołać funkcję InclusionTag w widoku
urlpatterns = [
ścieżka („inctag”, inclusiontag),
]

Teraz uruchom następujące polecenie, aby uruchomić serwer Django, aby sprawdzić, czy powyższy skrypt działa poprawnie lub nie.

$ Python3 Zarządzaj.Py Runserver

Uruchom następujący adres URL z dowolnej przeglądarki, aby sprawdzić wyjście tej aplikacji.

http: // localhost: 8000/inktag

Poniższe dane wyjściowe pojawi się, jeśli powyższe pliki zostaną utworzone i działają poprawnie. Istnieje 5 liczb równych od 10 do 20, a one zostały wyświetlone na wyjściu.

Wniosek:

W frameworku Django istnieje wiele funkcji, aby tworzyć różne typy niestandardowych tagów. Są to proste_tag (), inclusion_tag () i ssignment_tag (). Funkcja simple_tag () służy do zwracania ciągu po przetworzeniu danych. Funkcja inclusion_tag () służy do zwrócenia szablonu po przetworzeniu danych. Funkcja przypisania_tag () służy do ustawienia zmiennej po przetworzeniu danych. Funkcja inclusion_tag () została pokazana w tym samouczku, który zwrócił renderowany szablon po przetworzeniu danych. Mam nadzieję, że ten samouczek pomoże czytelnikowi wiedzieć, jak użyć znacznika włączenia w aplikacji Django.