Django

Hvordan lage Django Views?

Hvordan lage Django Views?
Ulike typer data for Django-applikasjonen, for eksempel HTML-innhold, XML-data, JSON-data, bilde, 404-feil, etc. overføres til malen gjennom Django-visning. Hver visning er opprettet for et bestemt formål og assosiert med en bestemt mal. Dataene i visningen kan genereres fra brukeren gjennom HTML-skjema eller fra databasen eller forretningslogikken. Django-visninger kan opprettes ved hjelp av en metode for python-klasse eller python-funksjon. De klassebaserte visningene inneholder mange funksjoner sammenlignet med funksjonsbaserte visninger. For dette bruker de fleste Django-applikasjonene klassebaserte visninger for å representere dataene for Django-applikasjonen. Måtene å lage den funksjonsbaserte visningen og klassebaserte visningen har blitt forklart i denne veiledningen.

Forutsetninger:

Før du praktiserer eksemplene på denne veiledningen, må du fullføre følgende oppgaver:

  1. Installer Django versjon 3+ på Ubuntu 20+ (helst)
  2. Lag et Django-prosjekt
  3. 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 viewapp

B. 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 skaperbruker

C. 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 dato
fra 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 banemodul
fra 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 mal
fra 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 banemodul
fra 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.

Mus Legg til musebevegelser i Windows 10 ved hjelp av disse gratisverktøyene
Legg til musebevegelser i Windows 10 ved hjelp av disse gratisverktøyene
De siste årene har datamaskiner og operativsystemer utviklet seg sterkt. Det var en tid da brukere måtte bruke kommandoer for å navigere gjennom filad...
Mus Kontroller og administrer musebevegelser mellom flere skjermer i Windows 10
Kontroller og administrer musebevegelser mellom flere skjermer i Windows 10
Dual Display Mouse Manager lar deg kontrollere og konfigurere musebevegelse mellom flere skjermer, ved å bremse bevegelsene nær grensen. Windows 10/8,...
Mus WinMouse lar deg tilpasse og forbedre musemarkørenes bevegelse på Windows PC
WinMouse lar deg tilpasse og forbedre musemarkørenes bevegelse på Windows PC
Hvis du vil forbedre standardfunksjonene til musepekeren, bruk freeware WinMouse. Det legger til flere funksjoner som hjelper deg å få mest mulig ut a...