Come abbiamo detto le View, a dispetto del nome, realizzano lo strato di Controller del pattern MVC. Ogni volta che facciamo una richiesta quindi, lanciamo una View. Per questo motivo abbiamo bisogno di associare a ciascuna View il relativo URL, grazie alle configurazioni effettuate nel file urls.py.
Una View è una funzione Python che prende una Web Request e restituisce una Web Response, in modo molto simile a quanto fanno le servlet in Java o gli HttpHandler in ASP.NET. A seconda della richiesta possiamo decidere di generare pagine HTML, documenti XML, immagini o status di errore HTTP.
Le View sono contenute nel file views.py incluso nella cartella della relativa applicazione (ad esempio app). Per creare una nuova View è sufficiente aprire il file (o crearlo se non esiste), importare il namespace HttpResponse e definire una nuova funzione.
View hello_world
from django.http import HttpResponse def hello_world(request): html = "<html><body><p>Hello, world!</p></body></html>" return HttpResponse(html)
La nostra hello_world prende come primo parametro un oggetto HttpRequest, in genere chiamato request, e restituisce un oggetto HttpResponse a cui passiamo la stringa con la mini-pagina Web di saluto.
Per raggiungere la nostra View con una richiesta al server abbiamo bisogno di impostare il mapping tra URL e View nel file urls.py, apriamolo e modifichiamo la variabile urlpatterns:
urlpatterns=patterns('',
# ...
( r'^app/helloworld/$', 'miosito.app.views.hello_world' ),
)
In questo modo Django mappa tutti gli URL che soddisfano l'espressione regolare ^app/helloworld/$ nella View hello_world dell'applicazione app del sito miosito.
È arrivato il momento di avviare il server e provare la nostra prima applicazione:
Avviare il server
manage.py runserver
Puntiamo il browser all'indirizzo:
http://localhost:8000/app/helloworld/
E finalmente otteniamo:
Se vuoi aggiornamenti su Development inserisci la tua email nel box qui sotto: