SlideShare a Scribd company logo
DJANGO LV.
3Obiettivi di Sezione
DJANGO Lv. 3
PROGRAMMAREINPYT
Si tratta dell’ultima sezione dedicata all’analisi delle
funzionalità principali di Django, prima di passare alla
creazione di un caso d’uso reale, un progetto nella sua
interezza!
Parleremo di Form e validazione degli input utente, e
vedremo come effettuare Registrazione e Login al di
fuori della sezione Admin
DJANGO Lv. 3 – Lezioni
Django Form Handling Process
I Form in Django
Validazione Form
Model Form
Registrazione e Autenticazione
Prova Pratica e Soluzione
PROGRAMMAREINPYT
GESTIONE DEI
FORMDJANGO LV. 2
DJANGO Lv. 3 – Intro Django Form
Un Form HTML è un gruppo di uno o più campi
input/widget in una Pagina Web, che viene usato
per raccogliere dati dagli utenti da inviare al
server
I Form sono versatili: disponiamo di widget per
tantissimi tipi di input, come aree testuali,
checkbox, campi numerici
I Form sono inoltre relativamente sicuri, potendoli
usare sia per richieste HTTP di tipo GET che di
tipo POST PROGRAMMAREINPYT
DJANGO Lv. 3 – Intro Django Form
Scrivere il codice HTML per un form è un
relativamente semplice: si tratta spesso di poche
righe!
Il lavoro si complica iniziando con la creazione di
un sistema in grado di ricevere e processare i dati
inseriti
Tra i compiti da svolgere abbiamo la validazione
dei dati, la comunicazione all’user di eventuali
errori, la gestione e il processing dei dati ricevuti,
e quindi l’invio di una risposta! PROGRAMMAREINPYT
DJANGO Lv. 3 – Intro Django Form
Il compito di ogni buon Framework è proprio
quello di fornirci una struttura che ci consenta di
concentrarci direttamente sul lavoro che
dobbiamo svolgere, senza dover “re-inventare la
ruota”
Django ci fornisce una serie di strumenti che ci
aiutano nella creazione di form in grado di
accettare input dagli utenti, processare questi dati
e fornire una risposta!
PROGRAMMAREINPYT
DJANGO Lv. 3 – Intro Django Form
Fin’ora abbiamo già
usato dei form in
Django, nella sezione
admin: in questa
sezione vedremo
come impiegare i form
in altre aree del sito
PROGRAMMAREINPYT
DJANGO Lv. 3 – Intro Django Form
Prima di passare alla scrittura del codice, analizziamo uno
schema del processo di gestione dei form da parte di
Django!
programmareinpytho
DJANGO Lv. 3 – Intro Django Form
Django Form Handling
Process
Ci riferiamo ai Form come
“unbound” quando non
sono ancora associati con
dati inseriti dall’utente
PROGRAMMAREINPYT
I FORM IN
DJANGOFINE PRIMA PARTE
DJANGO Lv. 3 – I Form in Django
In questa lezione vedremo finalmente come poter
utilizzare i Form in Django, parlando di FORM CLASS,
FORMS API e FORM FIELDS !
Partendo da un nuovo progetto ci occuperemo della
creazione dei Form Django all’interno di un nuovo file
chiamato forms.py, analizzando anche i vari campi che
possiamo assegnare ai Form
Vedremo come utilizzare i Template HTML per mostrare
il Form nella sua interezza, con widget e campi input
Creeremo una Funzione View in grado di processare i
dati inseriti PROGRAMMAREINPYT
DJANGO Lv. 3 – I Form in Django
Link utili dalla Documentazione Ufficiale
Indispensabile come referenza per la creazione di form personalizzati
Working with forms
Form Fields
FORMS API
PROGRAMMAREINPYT
DJANGO Lv. 3 – I Form in Django
INIZIAMO SUBITO!
PROGRAMMAREINPYT
VALIDAZIONE
FORMDJANGO LV. 2
DJANGO Lv. 3 – Validazione Form
In questa lezione vedremo come effettuare semplici
validazioni degli input inseriti dagli utenti, nei nostri Form
Faremo questo sovrascrivendo il metodo
clean_<nome_campo>, usando
django.core.exceptions.ValidationError, gli attributi
required e validators
INIZIAMO SUBITO!
PROGRAMMAREINPYT
MIGLIORAMENTI
GRAFICI
DJANGO LV. 2
DJANGO Lv. 3 – Miglioramenti
GraficiIn questa lezione vedremo come apportare miglioramenti
grafici all’aspetto dei nostri Form
INIZIAMO SUBITO!
PROGRAMMAREINPYT
MODEL FORMDJANGO LV. 3
DJANGO Lv. 3 – Model Form
Quando costruiamo un sito o un’app che fa utilizzo di
database, c’è una buona possibilità di trovarsi a dover
creare form che sono estremamente simili alla definizione
dei modelli della nostra app
Ad esempio, all’interno di un blog, potremmo avere la
necessità di creare dei form che vadano poi a popolare
una tabella nel database associata ad una classe
Commento definita nel file models.py
Per facilitarci il lavoro e rispettare il principio D.R.Y.,
Django ci fornisce la classe django.forms.ModelForm
PROGRAMMAREINPYT
DJANGO Lv. 3 – Model Form
Ciascun ModelForm dispone anche di un metodo save()
che ci permette di creare e modificare oggetti dentro al
database!
Facciamo subito degli esempi!
PROGRAMMAREINPYT
AUTENTICAZI
ONEDJANGO LV. 3
DJANGO Lv. 3 – Autenticazione
In questa lezione parliamo di Autenticazione, e nello specifico
approfondiremo gli aspetti di Login, Logout e Password Reset!
Vedremo come impostare Django per eseguire tutte queste
operazioni al di fuori della Sezione Admin, che ricordiamolo,
non è pensata per l’accesso degli utenti standard!
Il sistema di autenticazione è stato già messo in piedi quando
abbiamo dato il comando django-admin startproject;
tabelle e permessi sono stati settati col primo python
manage.py migrate
PROGRAMMAREINPYT
DJANGO Lv. 3 – Autenticazione
Django ci fornisce quasi tutto ciò di cui abbiamo bisogno per
settare un sistema di autenticazione al di fuori di admin: url
mapper, views e forms; Vedremo quindi come configurare
queste componenti e creeremo quanto mancante: i
Templates!
Troviamo degli esempi di Templates appropriati per
l’autenticazione nella documentazione ufficiale
INIZIAMO!
PROGRAMMAREINPYT
REGISTRAZIO
NEDJANGO LV. 3
DJANGO Lv. 3 – Registrazione
In questa lezione vedremo come creare un sistema di
registrazione!
Per fare questo avremo bisogno di una funzione view con
corrispettivo path url, un form e un template html
INIZIAMO SUBITO!
PROGRAMMAREINPYT
PROVA
PRATICADJANGO LV. 3
DJANGO Lv. 3 – Prova Pratica
La Prova Pratica di questa sezione consiste nella
creazione di una pagina di contatto per un Sito Web:
volendo potete utilizzare parte del codice utilizzato
durante la sezione
Il form di contatto ha i seguenti campi: contatto, email,
oggetto, contenuto
I dati inseriti andranno salvati nel database, in modo da
poterci accedere in un secondo momento dal Pannello di
Amministrazione
PROGRAMMAREINPYT

More Related Content

ODP
Pycon Jungle
KEY
Corso Python Deltapromo - Lezione 4
ODP
Django: utilizzo avanzato e nuove funzionalità
DOCX
Introduzione a..django
PDF
Django & Google App Engine: a value composition
PPT
Presentazione django reminiscence
PDF
Django
PPT
Django introduction
Pycon Jungle
Corso Python Deltapromo - Lezione 4
Django: utilizzo avanzato e nuove funzionalità
Introduzione a..django
Django & Google App Engine: a value composition
Presentazione django reminiscence
Django
Django introduction

Recently uploaded (9)

PPTX
SLIDE-DE-CURSOS-OssssFICIAL-DA-EGEPI-.pptx
PPTX
Copia di PROGETTO VIOLENZA sulle donne PCTO
PDF
BÀI TẬP TEST BỔ TRỢ THEO TỪNG UNIT - TIẾNG ANH 10 FRIENDS GLOBAL - CẢ NĂM (24...
PDF
GIÁO ÁN KẾ HOẠCH BÀI DẠY CHÍNH KHÓA TIẾNG ANH 9 - CẢ NĂM - THEO CÔNG VĂN 5512...
PDF
Mazzoni-Reggi-2012-Effetto-Lucifero-Su-Wikipedia.pdf
PDF
GIÁO ÁN CHÍNH KHÓA TIẾNG ANH 9 - CẢ NĂM - THEO CÔNG VĂN 5512 (2 CỘT) NĂM HỌC ...
PDF
BÀI TẬP TEST BỔ TRỢ THEO TỪNG UNIT - TIẾNG ANH 10 EXPLORE NEW WORLDS - CẢ NĂM...
PDF
16 CHUYÊN ĐỀ BÀI TẬP ÔN THI TUYỂN SINH VÀO 10 - MÔN TIẾNG ANH - THEO FORM ĐỀ ...
PDF
CHUYÊN ĐỀ BỔ TRỢ NGỮ ÂM, TỪ VỰNG NÂNG CAO - TIẾNG ANH 9 VÀ ÔN THI VÀO LỚP 10 ...
SLIDE-DE-CURSOS-OssssFICIAL-DA-EGEPI-.pptx
Copia di PROGETTO VIOLENZA sulle donne PCTO
BÀI TẬP TEST BỔ TRỢ THEO TỪNG UNIT - TIẾNG ANH 10 FRIENDS GLOBAL - CẢ NĂM (24...
GIÁO ÁN KẾ HOẠCH BÀI DẠY CHÍNH KHÓA TIẾNG ANH 9 - CẢ NĂM - THEO CÔNG VĂN 5512...
Mazzoni-Reggi-2012-Effetto-Lucifero-Su-Wikipedia.pdf
GIÁO ÁN CHÍNH KHÓA TIẾNG ANH 9 - CẢ NĂM - THEO CÔNG VĂN 5512 (2 CỘT) NĂM HỌC ...
BÀI TẬP TEST BỔ TRỢ THEO TỪNG UNIT - TIẾNG ANH 10 EXPLORE NEW WORLDS - CẢ NĂM...
16 CHUYÊN ĐỀ BÀI TẬP ÔN THI TUYỂN SINH VÀO 10 - MÔN TIẾNG ANH - THEO FORM ĐỀ ...
CHUYÊN ĐỀ BỔ TRỢ NGỮ ÂM, TỪ VỰNG NÂNG CAO - TIẾNG ANH 9 VÀ ÔN THI VÀO LỚP 10 ...
Ad
Ad

Django livello 3 - Guida Pratica e Completa a Django 2 e Bootstrap 4

  • 2. DJANGO Lv. 3 PROGRAMMAREINPYT Si tratta dell’ultima sezione dedicata all’analisi delle funzionalità principali di Django, prima di passare alla creazione di un caso d’uso reale, un progetto nella sua interezza! Parleremo di Form e validazione degli input utente, e vedremo come effettuare Registrazione e Login al di fuori della sezione Admin
  • 3. DJANGO Lv. 3 – Lezioni Django Form Handling Process I Form in Django Validazione Form Model Form Registrazione e Autenticazione Prova Pratica e Soluzione PROGRAMMAREINPYT
  • 5. DJANGO Lv. 3 – Intro Django Form Un Form HTML è un gruppo di uno o più campi input/widget in una Pagina Web, che viene usato per raccogliere dati dagli utenti da inviare al server I Form sono versatili: disponiamo di widget per tantissimi tipi di input, come aree testuali, checkbox, campi numerici I Form sono inoltre relativamente sicuri, potendoli usare sia per richieste HTTP di tipo GET che di tipo POST PROGRAMMAREINPYT
  • 6. DJANGO Lv. 3 – Intro Django Form Scrivere il codice HTML per un form è un relativamente semplice: si tratta spesso di poche righe! Il lavoro si complica iniziando con la creazione di un sistema in grado di ricevere e processare i dati inseriti Tra i compiti da svolgere abbiamo la validazione dei dati, la comunicazione all’user di eventuali errori, la gestione e il processing dei dati ricevuti, e quindi l’invio di una risposta! PROGRAMMAREINPYT
  • 7. DJANGO Lv. 3 – Intro Django Form Il compito di ogni buon Framework è proprio quello di fornirci una struttura che ci consenta di concentrarci direttamente sul lavoro che dobbiamo svolgere, senza dover “re-inventare la ruota” Django ci fornisce una serie di strumenti che ci aiutano nella creazione di form in grado di accettare input dagli utenti, processare questi dati e fornire una risposta! PROGRAMMAREINPYT
  • 8. DJANGO Lv. 3 – Intro Django Form Fin’ora abbiamo già usato dei form in Django, nella sezione admin: in questa sezione vedremo come impiegare i form in altre aree del sito PROGRAMMAREINPYT
  • 9. DJANGO Lv. 3 – Intro Django Form Prima di passare alla scrittura del codice, analizziamo uno schema del processo di gestione dei form da parte di Django! programmareinpytho
  • 10. DJANGO Lv. 3 – Intro Django Form Django Form Handling Process Ci riferiamo ai Form come “unbound” quando non sono ancora associati con dati inseriti dall’utente PROGRAMMAREINPYT
  • 11. I FORM IN DJANGOFINE PRIMA PARTE
  • 12. DJANGO Lv. 3 – I Form in Django In questa lezione vedremo finalmente come poter utilizzare i Form in Django, parlando di FORM CLASS, FORMS API e FORM FIELDS ! Partendo da un nuovo progetto ci occuperemo della creazione dei Form Django all’interno di un nuovo file chiamato forms.py, analizzando anche i vari campi che possiamo assegnare ai Form Vedremo come utilizzare i Template HTML per mostrare il Form nella sua interezza, con widget e campi input Creeremo una Funzione View in grado di processare i dati inseriti PROGRAMMAREINPYT
  • 13. DJANGO Lv. 3 – I Form in Django Link utili dalla Documentazione Ufficiale Indispensabile come referenza per la creazione di form personalizzati Working with forms Form Fields FORMS API PROGRAMMAREINPYT
  • 14. DJANGO Lv. 3 – I Form in Django INIZIAMO SUBITO! PROGRAMMAREINPYT
  • 16. DJANGO Lv. 3 – Validazione Form In questa lezione vedremo come effettuare semplici validazioni degli input inseriti dagli utenti, nei nostri Form Faremo questo sovrascrivendo il metodo clean_<nome_campo>, usando django.core.exceptions.ValidationError, gli attributi required e validators INIZIAMO SUBITO! PROGRAMMAREINPYT
  • 18. DJANGO Lv. 3 – Miglioramenti GraficiIn questa lezione vedremo come apportare miglioramenti grafici all’aspetto dei nostri Form INIZIAMO SUBITO! PROGRAMMAREINPYT
  • 20. DJANGO Lv. 3 – Model Form Quando costruiamo un sito o un’app che fa utilizzo di database, c’è una buona possibilità di trovarsi a dover creare form che sono estremamente simili alla definizione dei modelli della nostra app Ad esempio, all’interno di un blog, potremmo avere la necessità di creare dei form che vadano poi a popolare una tabella nel database associata ad una classe Commento definita nel file models.py Per facilitarci il lavoro e rispettare il principio D.R.Y., Django ci fornisce la classe django.forms.ModelForm PROGRAMMAREINPYT
  • 21. DJANGO Lv. 3 – Model Form Ciascun ModelForm dispone anche di un metodo save() che ci permette di creare e modificare oggetti dentro al database! Facciamo subito degli esempi! PROGRAMMAREINPYT
  • 23. DJANGO Lv. 3 – Autenticazione In questa lezione parliamo di Autenticazione, e nello specifico approfondiremo gli aspetti di Login, Logout e Password Reset! Vedremo come impostare Django per eseguire tutte queste operazioni al di fuori della Sezione Admin, che ricordiamolo, non è pensata per l’accesso degli utenti standard! Il sistema di autenticazione è stato già messo in piedi quando abbiamo dato il comando django-admin startproject; tabelle e permessi sono stati settati col primo python manage.py migrate PROGRAMMAREINPYT
  • 24. DJANGO Lv. 3 – Autenticazione Django ci fornisce quasi tutto ciò di cui abbiamo bisogno per settare un sistema di autenticazione al di fuori di admin: url mapper, views e forms; Vedremo quindi come configurare queste componenti e creeremo quanto mancante: i Templates! Troviamo degli esempi di Templates appropriati per l’autenticazione nella documentazione ufficiale INIZIAMO! PROGRAMMAREINPYT
  • 26. DJANGO Lv. 3 – Registrazione In questa lezione vedremo come creare un sistema di registrazione! Per fare questo avremo bisogno di una funzione view con corrispettivo path url, un form e un template html INIZIAMO SUBITO! PROGRAMMAREINPYT
  • 28. DJANGO Lv. 3 – Prova Pratica La Prova Pratica di questa sezione consiste nella creazione di una pagina di contatto per un Sito Web: volendo potete utilizzare parte del codice utilizzato durante la sezione Il form di contatto ha i seguenti campi: contatto, email, oggetto, contenuto I dati inseriti andranno salvati nel database, in modo da poterci accedere in un secondo momento dal Pannello di Amministrazione PROGRAMMAREINPYT