Python

Sådan oprettes Django-skabeloner?

Sådan oprettes Django-skabeloner?
En skabelon indeholder HTML-data, der genereres fra en visning og vises i browseren. De statiske og dynamiske HTML-sider kan oprettes ved hjælp af skabelonen. Logik og design er blevet holdt separat i Django-applikationen. Python-kode kan ikke bruges direkte i Django-skabelonen, fordi browseren ikke kan fortolke python-koden. Designeren kan kun designe HTML-siderne med det nødvendige format eller styling, og koderen tilføjer de statiske eller dynamiske data i skabelonen ved hjælp af Django-skabelonsprog (DTL).

Hvordan Django-skabelonen kan oprettes, og hvordan DTL kan bruges til at tilføje statisk eller dynamisk indhold til skabelonen, er vist i denne vejledning.

Fordele ved at bruge DTL:

Der er mange fordele ved at bruge DTL i Django-skabeloner. Nogle af dem er nævnt nedenfor.

  1. Den logiske del og præsentationsdelen af ​​applikationen oprettes separat.
  2. Det bliver lettere at udvide ansøgningen.
  3. Det hjælper med at reducere redundansen af ​​dataene.
  4. Det sikrer applikationens sikkerhed.

Forudsætninger:

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

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

Konfigurer en Django-app:

Kør følgende kommando for at oprette en Django-app med navnet tempapp:

$ python3 administrere.py startapp tempapp

Kør følgende kommando for at oprette brugeren for at få adgang til Django-databasen, men hvis du har oprettet brugeren før, behøver du ikke køre kommandoen vist nedenfor:

$ python3 administrere.py skaberbruger

Tilføj appnavnet i INSTALLERET_APP en del af indstillinger.py fil, som vist nedenfor:

INSTALLED_APPS = [
..
'tempapp'
]

Opret en mappe med navnet skabeloner inde i tempapp mappe og indstil skabeloner placering af appen i MALLER en del af indstillinger.py fil, som vist nedenfor:

MALLER = [

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

Opret en simpel Django-skabelon:

Opret indeks.html fil inde i tempapp / skabeloner / mappe med følgende HTML-script til at vise den formaterede statiske tekst på to linjer i browseren. HTML-fil kan ikke vises direkte i browseren og udsigten.py fil bruges til at gengive HTML-filen i Django-applikationen.

indeks.html





Django Tutorials



Lær Django skabelonsprog


Django er populær python-ramme til design af webapplikationer




Åbn synspunkter.py fil fra tempapp mappen og tilføj følgende script. Det rander () metoden bruges i udsigten.py fil for at få vist en hvilken som helst skabelonfil i browseren.

I det følgende script, indeks() funktion er defineret til at vise indholdet af indeks.html fil. Når denne funktion kalder fra webadresser.py fil, så vises skabelonfilen i browseren.

synspunkter.py

# Importer gengivelsesmodul fra django
fra django.genveje import gengivelse
# Opret indeksfunktion for at vise HTML-filen i browseren
def index (anmodning):
return render (anmodning, "indeks.html ")

Rediger indholdet af webadresser.py fil med følgende script. Ifølge manuskriptet, indekset () funktion af synspunkter.py vil blive kaldt til stien, 'indeks/'.

webadresser.py

# Importer sti-modul
fra django.webadresser til import af sti
# Importer visninger
fra tempapp-importvisninger
# Definer metode til indekssti
urlmønstre = [
sti ('indeks /', visninger.indeks) python3 administrere.py skaberbruger
]

Kør følgende URL fra browseren for at få følgende output. De statiske data vises i output.

http: // localhost: 8000 / index /

Opret en Django-skabelon med DTL:

Opret kunder.html fil inde i tempapp / skabeloner / mappe med følgende HTML-script. DTL bruges i dette script til at vise dataene for ordbogsvariablen, der initialiseres af dataene fra indlejrede lister i visninger2.py fil. Den første til loop bruges til at læse værdierne på den ydre liste og den anden til loop bruges til at læse værdierne på den indre liste.

kunder.html





kunde information




Liste over kunder






% for rækker i kunder%

% for col i rækker%

% endfor%

% endfor%
IDNavnE-mailtelefon
col



Opret en anden visningsfil med navnet visninger2.py under tempapp mappe med følgende script. En ordbogvariabel med navnet data erklæres i scriptet, der indeholder en indlejret liste til generering af tabeldata med 4 rækker og 4 kolonner. Det data variabel sendes til skabelonen, når kunder () funktion af dette script kaldes fra webadresser.py fil.

visninger2.py

# import render-modul fra django
fra django.genveje import gengivelse
# Opret en funktion til at sende tabeldata til skabelonen
def kunder (anmodning):
# definer en ordbog med indlejret liste
data = "kunder": [['6745', 'Monir Hossain', '[email protected]', '880191345234'],
['7845', 'Keya Akter', '[email protected]', '880189045673'],
['9056', 'Mohammed Ali', '[email protected]', '880179893922'],
['4536', 'Mostafa Kamal', '[email protected]', '880157665433']]

# return svar med skabelon og data
return render (anmodning, "kunder.html ", data)

Rediger webadresser.py fil med følgende script. ''kunder /stien er defineret i scriptet for at indlæse kunder.html fil i browseren med ordbogens data.

webadresser.py

# Importer sti-modul
fra django.webadresser til import af sti
# Importer visninger
fra tempapp-importvisninger
# Importer visninger2
fra tempapp-importvisninger2
# Definer metoder til indeks- og kundestier
urlmønstre = [
sti ('indeks /', visninger.indeks),
sti ('kunder /', synspunkter2.kunder)
]

Kør følgende URL fra browseren for at få følgende output. Fortegnelserne over alle kunder fra databasetabellerne er vist i browseren ved hjælp af DTL.

http: // localhost: 8000 / kunder /

Konklusion:

Måderne til oprettelse af en simpel skabelon og en skabelon med Django Template Language (DTL) er vist i denne vejledning. De nye Django-brugere vil være i stand til at oprette skabelonen til Django-appen korrekt efter at have praktiseret scriptet i denne tutorial.

Bedste spil at spille med håndsporing
Oculus Quest introducerede for nylig den gode idé om håndsporing uden controllere. Med et stadigt stigende antal spil og aktiviteter, der udfører supp...
Sådan vises OSD-overlay i fuldskærms Linux-apps og -spil
Afspilning af fuldskærmsspil eller brug af apps i distraktionsfri fuldskærmstilstand kan afskære dig fra relevante systemoplysninger, der er synlige i...
Top 5 spiloptagelseskort
Vi har alle set og elsket streaming af gameplay på YouTube. PewDiePie, Jakesepticye og Markiplier er kun nogle af de bedste spillere, der har tjent mi...