Django

Få den aktuelle URL i Django-skabelonen

Få den aktuelle URL i Django-skabelonen
Django-skabelon bruges til at vise applikationsdataene til brugerne. Undertiden henter og viser den aktuelle URL i skabelonen. Den aktuelle URL kan vises på forskellige måder, såsom kun domænenavnet, et domænenavn med sti og domænenavnet med sti og http. Hvordan denne aktuelle URL kan vises i Django-skabelonen i forskellige formater vises i denne vejledning.

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, at serveren fungerer korrekt eller ej.

Konfigurer en Django-app:

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

$ python3 administrere.py startapp kanlapp

2. Kør følgende kommando for at oprette den bruger, der vil blive brugt til at få adgang til Django-databasen. Hvis du har oprettet brugeren før, behøver du ikke køre kommandoen.

$ python3 administrere.py skaberbruger

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

INSTALLED_APPS = [
..
'kanlapp'
]

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

MALLER = [

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

Opret og rediger de nødvendige filer:

Tre forskellige HTML-filer blev oprettet i denne del af denne tutorial for at vise den aktuelle URL i tre forskellige formater.

Opret indeks.html fil med følgende script for kun at vise domænenavnet på den aktuelle URL.

indeks.html


Læs domænenavn


Domænenavnet på den aktuelle URL = showURL



Opret indeks2.html fil med følgende script for at vise domænenavnet med stien til den aktuelle URL.

indeks2.html


Læs den aktuelle URL

>

Domænenavnet på den aktuelle URL = showURL



Opret indeks3.html fil med følgende script for at vise domænenavnet med stien og http for den aktuelle URL.

indeks3.html


Læs aktuel URL med HTTP


Domænenavnet på den aktuelle URL = showURL



Rediger synspunkter.py fil af kanlapp mappe med følgende script. Der var defineret tre funktioner i scriptet for at returnere den aktuelle URL-værdi i tre forskellige formater til skabelonen. Det kanl1 () er defineret til at hente domænenavnet på den aktuelle URL og sende det til indeks.html fil. Anmodning.get_host () funktionen er blevet brugt til at hente domænenavnet på den aktuelle URL. Det kanl2 () er defineret til at hente domænenavnet med stien til den aktuelle URL og sende det til indeks2.html fil. På den anden side anmodning.stifunktion er blevet brugt sammen med anmodningen.get_host () -funktion til at læse stien med domænenavnet på den aktuelle URL. Det kanl3 () er defineret til at hente domænenavnet med http og stien til den aktuelle URL og sende den til indeks3.html fil. anmodning._strøm_skema_host attribut er blevet brugt til at hente domænenavnet med http. Returneringsværdien for hver funktion overføres til skabelonen ved hjælp af showURL tag.

synspunkter.html

# Import gengivelsesmodul
fra django.genveje import gengivelse
# Læs kun domænenavnet på den aktuelle URL
def kanl1 (anmodning):
urlObject = anmodning.get_host ()
return render (anmodning, 'indeks.html ', ' showURL ': urlObject)
# Læs domænenavnet med stien
def kanl2 (anmodning):
urlObject = anmodning.get_host () + anmodning.sti
return render (anmodning, 'index2.html ', ' showURL ': urlObject)
# Læs domænenavnet med http og sti
def kanl3 (anmodning):
urlObject = anmodning._current_scheme_host + anmodning.sti
return render (anmodning, 'index3.html ', ' showURL ': urlObject)

Rediger webadresser.py fil af kanlapp mappe med følgende script. Der var defineret tre stier i scriptet til adgang til de tre funktioner i visningsfilen. Den tomme streng (”) sti vil blive brugt til at kalde kanl1 () fungere. Det 'indeks2' sti vil blive brugt til at kalde kanl2 () fungere. Det 'indeks3' sti vil blive brugt til at kalde kanl3 () fungere.

webadresser.py

# Importer sti-modul
fra django.webadresser til import af sti
# Importvisning
fra kanlapp-importvisninger
# Definer stier til at læse den aktuelle URL
urlmønstre = [
# Vis domænenavnet i skabelonen
sti (", visninger.kanl1),
# Vis domænenavnet med sti i skabelonen
sti ('index2', visninger.kanl2),
# Vis domænenavnet med http og sti i skabelonen
sti ('index3', visninger.kanl3),
]

Produktion:

Kør følgende kommando for at starte Django-serveren.

$ python3 administrere.py runserver

Udfør følgende URL fra browseren for at vise domænenavnet på den aktuelle URL. Det kanl1 () funktion kaldes til denne URL, der sender domænenavnet til indeks.html fil.

http: // localhost: 8000

Følgende output vises efter udførelse af scriptet.

Udfør følgende URL fra browseren for at vise domænenavnet med stien til den aktuelle URL. Det kanl2 () funktionen kaldes til denne URL, der sender domænenavnet med stien til indeks2.html fil.

http: // localhost: 8000 / index2

Følgende output vises efter udførelse af scriptet. Her er stien indeks2.

Udfør følgende URL fra browseren for at vise domænenavnet med http og stien til den aktuelle URL. Det kanl3 () funktionen kaldes til denne URL, der sender domænenavnet med http og stien til indeks3.html fil.

http: // localhost: 8000 / index3

Følgende output vises efter udførelse af scriptet. Her er stien indeks3.

Konklusion:

Den aktuelle URL kan vises i Django-skabelonen ved hjælp af metoden og attributterne for anmodningsobjektet. Tre skabeloner var oprettet i denne vejledning for at vise den aktuelle URL på tre forskellige måder, der hjælper læserne med at kende måden at læse den aktuelle URL på i Django-skabelonen.

Kamp om Wesnoth 1.13.6 Udvikling frigivet
Kamp om Wesnoth 1.13.6 udgivet i sidste måned, er den sjette udviklingsudgivelse i 1.13.x-serien, og den leverer en række forbedringer, især til bruge...
Sådan installeres League Of Legends på Ubuntu 14.04
Hvis du er fan af League of Legends, er dette en mulighed for dig at prøvekøre League of Legends. Bemærk, at LOL understøttes på PlayOnLinux, hvis du ...
Installer det nyeste OpenRA-strategispil på Ubuntu Linux
OpenRA er en Libre / Free Real Time Strategy-spilmotor, der genskaber de tidlige Westwood-spil som det klassiske Command & Conquer: Red Alert. Distrib...