Come creare viste django?

Come creare viste django?
Diversi tipi di dati dell'applicazione Django, come contenuto HTML, dati XML, dati JSON, immagine, errore 404, ecc. vengono trasferiti al modello tramite Django View. Ogni vista è creata per uno scopo specifico e associata a un particolare modello. I dati della vista possono essere generati dall'utente attraverso il modulo HTML o dal database o dalla logica aziendale. Le visualizzazioni di Django possono essere create utilizzando un metodo di classe Python o Python. Le viste basate sulla classe contengono molte funzionalità rispetto alle viste basate sulle funzioni. Per questo, la maggior parte delle applicazioni Django utilizza viste basate su classi per rappresentare i dati dell'applicazione Django. I modi per creare la visione basata sulle funzioni e la visione basata sulla classe sono stati spiegati in questo tutorial.

Prerequisiti:

Prima di praticare gli esempi di questo tutorial, devi completare i seguenti compiti:

  1. Installa la versione Django 3+ su Ubuntu 20+ (preferibilmente)
  2. Crea un progetto Django
  3. Esegui il server Django per verificare se il server funziona correttamente o meno

Imposta un'app Django:

UN. Per creare un'app Django denominata ViewApp, eseguire il comando seguente:

$ Python3 Gestisci.Py Startapp ViewApp

B. Per creare l'utente per accedere al database Django, eseguire il comando seguente. Se hai creato l'utente prima, salta questa parte:

$ Python3 Gestisci.py createsuperuser

C. Aggiungi il nome dell'app nella parte installata_app delle impostazioni.Py File.

Installato_apps = [
..
'Visualizzapp'
"

D. Crea una cartella denominata modelli dentro il Visualizzapp cartella e impostare il modello Posizione dell'app nel file Modelli parte di impostazioni.Py file.

Modelli = [

.. .
'Dirs': ['/Home/Fahmida/Django_Pro/ViewApp/Templates'],
.. .
,
"

Crea una semplice vista basata sulle funzioni:

Apri il visualizzazioni.Py file da Visualizzapp cartella e sostituire il contenuto di questo file con il seguente script. indice() la funzione viene utilizzata nello script per creare il contenuto HTML che verrà inviato al browser utilizzando il Httpresponse () metodo. Qui, la data e l'ora corrente del sistema verranno lette utilizzando il oggi () la funzione e il valore della data corrente verranno generati prima di inviare al browser.

Visualizzazioni.Py

# Importa il modulo Data per leggere la data corrente
Dalla data di importazione datetime
# Importa il modulo HTTPResponse per inviare dati dalla visualizzazione al modello
da Django.Importa HTTP HttPresponse
# Definisci funzione per creare la vista basata sulle funzioni
DEF INDICE (richiesta):
# Leggi la data corrente
oggi = data.Oggi()
# Imposta i dati statici per la vista
content = "

Benvenuti in Linuxhint

"
contenuto + = "oggi è" + oggi.strftime ("%b") + "" + oggi.strftime ("%d") + "," + str (oggi.anno) + "

"
# Ha inviato il contenuto al browser
restituire httpresponse (contenuto)

Modificare il contenuto del URL.Py File con il seguente script. Nella sceneggiatura, il 'Benvenuto/' Il percorso è definito per chiamare il indice() funzione che invierà il contenuto HTML al file modello.

URL.Py

# Modulo per il percorso Importa
da Django.percorso di importazione degli URL
# Modulo Visualizza Importa
Dalle visualizzazioni delle importazioni ViewApp
# Metodo dell'indice di chiamata per visualizzare il contenuto
urlpatterns = [
# DEFINE PATH TO CALL INDICE () FUNZIONE
Path ('Welcome/', visualizzazioni.indice)
"

Esegui il seguente URL dal browser che mostrerà il seguente output. Un testo del titolo formattato e il valore della data corrente sono mostrati nell'output.

http: // localhost: 8000/welcome/

Crea una semplice vista basata su classe:

Creare un viste2.Py File all'interno della cartella ViewApp e aggiungi il seguente script. La mia opinione La classe è definita nello script che contiene un metodo chiamato Ottenere(). Una variabile di elenco denominata ListData è dichiarato nello script per creare un elenco di 10 numeri casuali. I valori dell'elenco verranno passati al modello attraverso Httpresponse () Metodo quando questa vista viene chiamata. il casuale Il modulo è stato usato nello script per generare un numero intero casuale in ogni iterazione del per Loop usando il Randint () funzione.

viste2.Py

# Importa il modulo HTTPResponse per inviare dati dalla visualizzazione al modello
da Django.Importa HTTP HttPresponse
# Modulo Visualizza Importa
da Django.Visualizza vista Importa
# Importa il modulo casuale
importare casuali
# Definisci la classe per le visualizzazioni basate sulla classe
Class MyView (View):
def get (self, request):
# Dichiara la variabile dell'elenco
listData = []
# Aggiungi il primo elemento dell'elenco
ListData.aggiungere('

L'elenco di 10 numeri casuali è:

')
# Itera il ciclo per 10 volte
per n nell'intervallo (10):
# Genera un numero casuale entro 1 a 50
random_number = casuale.Randint (1, 50)
# Aggiungi il numero casuale nell'elenco
ListData.append (random_number)
# Aggiungi un elemento di interruzione nell'elenco
ListData.aggiungere('
')
# Aggiungi l'ultimo elemento dell'elenco
ListData.aggiungere('')
# Invia i valori dell'elenco al browser
return httpresponse (listdata)

Modificare il contenuto del URL.Py File con il seguente script. Nella sceneggiatura, il "numero/"Percorso è definito per chiamare il La mia opinione.as_view () Metodo che invierà i dati dell'elenco al file modello.

URL.Py

# Modulo per il percorso Importa
da Django.percorso di importazione degli URL
# Modulo Visualizza Importa
Dalle visualizzazioni delle importazioni ViewApp
# Importa classe myview
da viewApp.Visualizza2 Importa myview
# Chiama il metodo Ottieni alla classe MyView
urlpatterns = [
# DEFINE PATH TO CALL INDICE () FUNZIONE
Path ('Welcome/', visualizzazioni.indice),
# Definisci il percorso per chiamare MyView.Metodo as_view ()
Path ('Number/', MyView.as_view ()),
"

Esegui il seguente URL dal browser che mostrerà il seguente output. I numeri dell'output verranno modificati se la pagina viene aggiornata perché ogni numero dell'elenco verrà generato in modo casuale.

http: // localhost: 8000/numero/

Conclusione:

L'output dell'applicazione Web dipende dallo script del file di visualizzazione che è una parte importante di qualsiasi applicazione Web. Le visualizzazioni basate sulle funzioni sono utilizzate principalmente nella prima versione dell'app Django e ora i VIE basati su classi sono utilizzati nella maggior parte delle applicazioni di Django. I modi per creare entrambi i tipi di viste sono stati mostrati in questo tutorial per aiutare i nuovi utenti di Django a creare le loro opinioni in base alla loro applicazione.