Forutsetninger:
Før du praktiserer eksemplene på denne veiledningen, må du fullføre følgende oppgaver:
- Installer Django versjon 3+ på Ubuntu 20+ (helst)
- Lag et Django-prosjekt
- Kjør Django-serveren for å sjekke om serveren fungerer som den skal eller ikke
Konfigurer en Django-app:
EN. For å opprette en Django-app som heter viewapp, kjør følgende kommando:
$ python3 administrere.py startapp viewappB. For å opprette brukeren for tilgang til Django-databasen, kjør følgende kommando. Hvis du har opprettet brukeren før, så hopp over denne delen:
$ python3 administrere.py skaperbrukerC. Legg til appnavnet i INSTALLED_APP-delen av innstillingene.py-fil.
INSTALLED_APPS = [..
'viewapp'
]
D. Opprett en mappe med navnet maler inne i viewapp mappen og still inn malens plasseringen av appen i MALER del av innstillinger.py fil.
MALER = [.. .
'DIRS': ['/ home / fahmida / django_pro / viewapp / templates'],
.. .
,
]
Lag en enkel funksjonsbasert visning:
Åpne utsikt.py fil fra viewapp mappen og erstatt innholdet i denne filen med følgende skript. indeks () -funksjonen brukes i skriptet for å lage HTML-innholdet som vil bli sendt til nettleseren ved hjelp av HttpResponse () metode. Her vil dagens dato og klokkeslett for systemet leses ved hjelp av i dag () funksjon og gjeldende datoverdi genereres før den sendes til nettleseren.
Visninger.py
# Importer datomodulen for å lese gjeldende datofra datidens importdato
# Importer HttpResponse-modulen for å sende data fra visning til mal
fra django.http importer HttpResponse
# Definer funksjon for å lage funksjonsbasert visning
def indeks (forespørsel):
# Les gjeldende dato
i dag = dato.i dag()
# Angi statiske data for visningen
innhold = "
Velkommen til LinuxHint
"
content + = "I dag er" + i dag.strftime ("% B") + "" + i dag.strftime ("% d") + "," + str (i dag.år) + "
# Sendte innholdet til nettleseren
returner HttpResponse (innhold)
Endre innholdet i nettadresser.py filen med følgende skript. I manuset er den 'Velkommen/' banen er definert for å kalle indeks () funksjon som sender HTML-innholdet til malfilen.
nettadresser.py
# Importer banemodulfra django.URL-adresse for import
# Importer visningsmodul
fra viewapps importvisninger
# Ring indeksmetode for å vise innholdet
urlpatterns = [
# Definer vei til samtaleindeks () -funksjon
sti ('velkommen /', utsikt.indeks)
]
Kjør følgende URL fra nettleseren som viser følgende utdata. En formatert overskriftstekst og gjeldende datoverdi vises i utdataene.
http: // localhost: 8000 / velkommen /
Lag en enkel klassebasert visning:
Lage en utsikt2.py filen i viewapp-mappen og legg til følgende skript. Mitt syn klasse er definert i skriptet som inneholder en metode som heter få(). En listevariabel med navnet listdata er erklært i skriptet for å lage en liste med 10 tilfeldige tall. Verdiene til listen vil bli sendt til malen gjennom HttpResponse () metode når denne visningen kalles. det tilfeldige modulen har blitt brukt i skriptet for å generere et tilfeldig heltall i hver iterasjon av til sløyfe ved hjelp av randint () funksjon.
utsikt2.py
# Importer HttpResponse-modulen for å sende data fra visning til malfra django.http importer HttpResponse
# Importer visningsmodul
fra django.visninger importvisning
# Importer tilfeldig modul
importer tilfeldig
# Definer klasse for klassebaserte visninger
klasse MyView (Vis):
def get (selv, forespørsel):
# Erklær listevariabelen
listdata = []
# Legg til det første elementet i listen
listdata.legge til ('
listen over 10 tilfeldige tall er:
')# Iterer løkken i 10 ganger
for n i rekkevidde (10):
# Generer et tilfeldig tall innen 1 til 50
tilfeldig_nummer = tilfeldig.randint (1, 50)
# Legg til tilfeldig nummer i listen
listdata.legge til (tilfeldig_nummer)
# Legg til et pauseelement i listen
listdata.legge til ('
')
# Legg til det siste elementet i listen
listdata.legge til ('
# Send listeverdiene til nettleseren
returner HttpResponse (listdata)
Endre innholdet i nettadresser.py filen med følgende skript. I manuset erNummer/ ”Banen er definert for å kalle Mitt syn.som_visning () metode som vil sende dataene til listen til malfilen.
nettadresser.py
# Importer banemodulfra django.URL-adresse for import
# Importer visningsmodul
fra viewapps importvisninger
# Importer MyView-klasse
fra viewapp.views2 importer MyView
# Ring get-metoden til MyView-klassen
urlpatterns = [
# Definer vei til samtaleindeks () -funksjon
sti ('velkommen /', utsikt.indeks),
# Definer vei for å ringe MyView.as_view () -metoden
sti ('nummer /', MyView.as_view ()),
]
Kjør følgende URL fra nettleseren som viser følgende utdata. Nummeret på utdataene vil endres hvis siden oppdateres fordi hvert nummer på listen vil bli generert tilfeldig.
http: // localhost: 8000 / nummer /
Konklusjon:
Utdataene til webapplikasjonen avhenger av skriptet til visningsfilen som er en stor del av en hvilken som helst webapplikasjon. Funksjonsbaserte visninger brukes mest i den tidlige versjonen av Django-appen, og nå brukes klassebaserte vies i de fleste applikasjoner av Django. Måtene å opprette begge typer visninger på er vist i denne veiledningen for å hjelpe de nye Django-brukerne med å lage sine synspunkter basert på deres applikasjon.