Django

Sådan bruges Django Inclusion-tag

Sådan bruges Django Inclusion-tag
Django framework bruger forskellige typer skabeloner til at præsentere dataene i applikationen. Django-administratorgrænsefladen bruger det tilpassede skabelontag. Utseendet på disse grænsefladeelementer, såsom knapper, felter osv., er de samme for alle sider. Django-udvikleren kan definere det tilpassede skabelontag og filtrere i det omfang skabelonmotoren og det nye skabelontag kan bruges ved hjælp af % custom_tag%. Det skabelonmærke, der bruges til at vise data ved at gengive en anden skabelon, kaldes inklusionstagget. Måden at bruge inklusionstagget i Django-skabelonen vises i denne vejledning.

Forudsætninger:

Før du træner scriptet til denne vejledning, skal du udføre følgende opgaver.

EN. Installer Django version 3+ på Ubuntu 20+ (helst)
B. Opret et Django-projekt
C. Kør Django-serveren for at kontrollere, at serveren fungerer korrekt eller ej.

Konfigurer en Django-app:

EN. Kør følgende kommando for at oprette en Django-app med navnet inklusiontagapp.

$ python3 administrere.py startapp inklusiontagapp

B. Kør følgende kommando for at oprette brugeren til adgang til Django-databasen. Hvis du har oprettet brugeren før, behøver du ikke køre kommandoen.

$ python3 administrere.py skaberbruger

C. Tilføj appnavnet i INSTALLERET_APP en del af indstillinger.py fil.

INSTALLED_APPS = [
..
'inklusiontagapp'
]

D. Opret en mappe med navnet skabeloner inde i inklusiontagapp mappe og indstil skabeloner placering af appen i MALLER en del af indstillinger.py fil.

MALLER = [

.. .
'DIRS': ['/ home / fahmida / django_pro / inclusiontagapp / templates'],
.. .
,
]

Implementér inklusionstag i Django:

skab skabelonmærker mappe inde i inklusiontagapp folder. Opret derefter en python-fil med navnet inklusionstag.py med følgende script. Skabelonmodulet importeres til scriptet for at bruge inklusionstagget. Der oprettes en liste over lige numre efter opkald til display_even_numbers () funktion af dette script. Outputtet af dette script vises i Skærm.html fil, der er oprettet i næste trin i denne vejledning.

inklusionstag.py

# Importér skabelonmodul
fra django import skabelon
# Opret et objekt fra biblioteket ()
register = skabelon.Bibliotek()
# Definer skabelonfilen til inklusionskoden
@Tilmeld.inclusion_tag ('display.html ')
# Erklær funktion for at finde ud af lige numre inden for et interval
def display_even_numbers (a, b):
# Erklær en tom liste
antal = []
# Iterer løkken for at finde ud af lige tal mellem a og b
for jeg inden for rækkevidde (a, b):
# Kontroller, at antallet er lige eller ikke
hvis jeg% 2 == 0:
# Tilføj nummeret på listen, hvis det er lige
nummer.tilføje (i)
# Returner listen til displayet.html-fil
returner "output": antal

Opret en HTML-fil med navnet Skærm.html inde i skabeloner mappen og tilføj følgende script. Listens værdier, der returneres af inklusionstagget, læses af en for-loop i scriptet.

Skærm.html



<br>Test af inklusionsmærke<br>



    % for val i output%

  1. val

  2. % endfor%


Opret derefter en anden HTML-fil med navnet incusiontag.html inde i skabeloner mappen og tilføj følgende script. I dette script indlæses indholdet af inklusionstag, der er lavet i den foregående del af denne tutorial, og display_event_nummer () funktion kaldes med to argumentværdier, 10 og 20. Denne funktion opretter en liste med lige numre mellem 10 og 20 og returnerer listen til Skærm.html fil.

inklusionstag.html



<br>Eksempel på inkludering af Django<br>



Liste over lige tal fra 10 til 20


% load inclusiontag%
% display_even_numbers 10 20%


Rediger visningerne.py-fil med følgende script for at indlæse inklusionstagget i den krævede skabelonfil. Når funktionsinkluderingsmærket () for dette script kaldes, vises det inklusionstag.html fil, der indlæser inklusionstaggen og kalder display_even_numbers () fungere.

synspunkter.py

# Import gengiver modul
fra django.genveje import gengivelse
"
Erklær funktion for at gengive inklusiontag.html-fil
at indlæse inklusionskode
"
def inclusiontag (anmodning):
return render (anmodning, "inklusiontag.html ")

Rediger webadresser.py fil af Django-projektet, og tilføj følgende script. Efter kørsel af Django-serveren, hvis stien, inktag, tilføjes efter basis-URL'en inklusiontag () funktion kaldes fra visningsfilen. Denne funktion gengiver inklusionstag.html fil. Denne HTML-fil indlæser det inklusionskode, der kaldes display_even_numbers () med argumenter. Denne funktion returnerer en liste over lige tal baseret på argumentværdierne og viser dem i Skærm.html fil.

webadresser.py

# Importer sti
fra django.webadresser til import af sti
# Importer inklusionsmærkevisning
fra inklusiontagapp.visninger import inklusiontag
# Definer sti til at kalde visningens inklusiontag-funktion
urlmønstre = [
sti ('inctag', inclusiontag),
]

Kør nu følgende kommando for at starte Django-serveren for at kontrollere, at ovenstående script fungerer korrekt eller ej.

$ python3 administrere.py runserver

Kør følgende URL fra enhver browser for at kontrollere output fra denne app.

http: // localhost: 8000 / inctag

Følgende output vises, hvis ovenstående filer oprettes og fungerer korrekt. Der er 5 lige tal mellem 10 og 20, og disse er blevet vist i output.

Konklusion:

Der findes mange funktioner i Django-rammen for at oprette forskellige typer brugerdefinerede tags. Disse er simple_tag (), inclusion_tag () og ssignment_tag (). simple_tag () funktion bruges til at returnere streng efter behandling af dataene. inklusion_tag () funktion bruges til at returnere en skabelon efter behandling af dataene. assignment_tag () funktion bruges til at indstille en variabel efter behandling af dataene. Funktionen inclusion_tag () er vist i denne tutorial, der returnerede en gengivet skabelon efter behandling af dataene. Jeg håber, at denne tutorial hjælper læseren med at vide, hvordan man bruger inklusionstagget i Django-appen.

OpenTTD Tutorial
OpenTTD er et af de mest populære forretningssimuleringsspil derude. I dette spil skal du oprette en vidunderlig transportvirksomhed. Du starter dog i...
SuperTuxKart til Linux
SuperTuxKart er en fantastisk titel designet til at give dig Mario Kart-oplevelsen gratis på dit Linux-system. Det er ret udfordrende og sjovt at spil...
Kæmp om Wesnoth-vejledning
Slaget om Wesnoth er et af de mest populære open source-strategispil, som du kan spille på dette tidspunkt. Ikke kun har dette spil været under udvikl...