Quindi ora daremo un'occhiata al codice che scrive effettivamente le viste,
il codice in modo efficace in views.py.
Ora la prima vista a cui daremo un'occhiata è quella in cui non stiamo nemmeno
scrivendo alcun codice.
E questa è quella vista predefinita, quella TemplateView.
E ancora, TemplateView è il codice che una classe che
ci viene data da Django, TemplateView, e tu gli passi un parametro.
Quindi in realtà stiamo chiamando una funzione qui
e passando un nome di modello ad essa, e questo è un file, views/main.html.
Questa è la vista dell'applicazione,
c'è una sottocartella chiamata template e poi parlerò di questo in un po '.
Ripetiamo il nome dell'applicazione due volte.
Quindi e' un po' strano.
Ma deve fare il fatto che questi nomi sono globali in tutte le applicazioni.
E quindi vuoi che ci sia forse più di un main.html.
Ed è per questo che hai questo nome di cartella extra e
lo metti lì anche se sembra un po 'ridondante ma va bene.
E quindi questo è solo un file HTML statico.
Non leggerò alcun dato da un database.
Non ho intenzione di scrivere alcun dato nel database.
Ho solo intenzione di leggere questo file e inviarlo di nuovo al browser.
E questa è una cosa comune,
dove abbiamo solo un file che vogliamo rimandare al browser.
E quindi non dobbiamo nemmeno scrivere alcun codice Python oltre ad
aggiungere questa voce nei pattern URL in urls.py.
Quindi questa è una vista in cui non hai scritto codice Python.
Ora, per le parti in cui scriverai il codice Python per una vista,
passerai le variabili.
Le variabili riguardano tutte l'oggetto richiesta.
L' oggetto richiesta è tutti i dati in arrivo e l'oggetto risposta
è qualcosa che si produce nella vista e si invia tutto indietro.
Quindi, l'oggetto richiesta è un'istanza dell'oggetto della classe HttpRequest.
Questo è un Django predefinito,
e ci sono solo un sacco di cose.
Lo schema, ora qual è lo schema?
Indipendentemente dal fatto che sia sicuro o insicuro https. Il corpo? E' una corda.
Quindi ci sono circa 20 o 30 attributi. Ne
useremo alcuni, ma non devi usarli tutti, ma
puoi andare a cercare la documentazione.
E più sofisticata diventa la tua applicazione, più è probabile
che dovrai scavare per trovare un po 'della richiesta in arrivo.
Potresti pensare a questa richiesta i dati sono tutti quei dati che vedi nel
tuo debugger del browser su quali dati sono stati inviati al server,
che tutto finisce da qualche parte in questo oggetto.
Ora, quando torniamo da una vista, dobbiamo inviare una risposta indietro.
E quindi la risposta è qualcosa che creiamo all'interno del nostro punto di vista.
Potrebbe essere semplicemente testo che è HTML, o potrebbe essere un oggetto di reindirizzamento,
una risposta di reindirizzamento che dice, hey, vai a una pagina diversa.
E così, lo facciamo. Il lavoro principale alla fine della vista è produrre
una risposta e quindi restituirla a Django.
E così, ecco una vista molto semplice.
Quindi qui stiamo dicendo, siamo nell'applicazione viste.
Andremo alla vista funky, giusto?
E così nel urls.py, diciamo mappa/funky a questa
funzione chiamata funky, è una funzione funky.
E' per questo che lo chiamo funky.
E così quando vede questo, tutti i dati che entrano nella richiesta
vengono visualizzati in questa variabile che è il primo parametro inviato a quella funzione.
Quindi questo è quello che sta dicendo in urls.py.
Prendi tutto ciò che va a visualizzazioni/funky, raccogli tutti i dati
della richiesta dal browser, mettilo in un oggetto e poi passa quell'oggetto richiesta in.
Ora, in questo, non farò nulla con quell'
oggetto richiesta perché restituisco sempre la stessa identica cosa.
E così ho solo una bella stringa tripla di qualche HTML con meno thans e
più grandi thans e ho intenzione di tornare fondamentalmente,
è il mio lavoro nella vista restituire una risposta. Ce
ne sono una coppia, due tipi principali. Uno è un HttpResponse,
che è proprio come un corpo di testo, ed è quello che sto inviando qui.
Sto inviando un HttpResponse, questo è un costruttore.
Stiamo costruendo un oggetto HttpResponse e
prendendo quella stringa che ho messo lì e via andiamo.
Va bene? E così che fondamentalmente se si colpisce questo percorso, si sta andando a recuperare questa
pagina e sembra come questo quando è tutto detto e fatto.
Ok, ora vogliamo parlare di come possiamo arrivare ai parametri.
Quindi ho detto che questo oggetto di richiesta che entra nella tua funzione di visualizzazione
ha tutti i dati della richiesta.
Bene, se inviamo a una vista con questa
coppia chiave-valore punto interrogativo, questa è un'ipotesi uguale a 42 lì.
E andremo a instradare il pericolo a views.danger in urls.py.
E, quindi tutti questi dati sono avvolti in questa variabile chiamata richiesta,
passata nella funzione denominata pericolo.
E così, all'interno della richiesta ci sono alcuni dati. request.get è un dizionario
delle coppie chiave-valore che si trovano su quell'URL.
Quindi, per tirare fuori il 42, possiamo dire,
request.Get staffa 'indovina' e che tira fuori.
E questo è tutto quello che abbiamo qui è una pagina HTML molto semplice e
stiamo sostituendo quel piccolo pezzo con 42.
E quindi qualunque cosa sia questo numero ritorna nell'output.
Quindi la tua ipotesi era 42.
Quindi è così che passiamo i dati GET in una vista.
Ora, il prossimo,
vi spiegherò esattamente perché ho chiamato quella funzione «pericolo».
[ MUSIC]