Come creare la forma django?

Come creare la forma django?
L'uso del modulo è una parte essenziale di qualsiasi applicazione web. L'input degli utenti del sito Web può essere preso utilizzando il modulo. Può contenere diversi tipi di campi, come casella di testo, casella combinata, casella di controllo, pulsante di opzione, ecc. Per prendere i dati dagli utenti. Django Framework contiene un gran numero di librerie per aiutare lo sviluppatore Web a progettare un modulo HTML per l'assunzione di input dall'utente, elaborare l'input e rispondere all'input dell'utente.

Come il modulo HTML può essere utilizzato per prendere i dati dall'utente, leggere i valori di input e stampare i valori nel browser utilizzando Django è mostrato in questo tutorial.

Prerequisiti:

Devi creare un progetto Django prima di creare la forma Django. Per creare un nuovo progetto Django e andare nella cartella del progetto, eseguire i seguenti comandi:

$ django-addmin startproject django_pro
$ cd django_pro

Per creare file necessari e applicare le migrazioni per il progetto, eseguire il comando seguente:

$ Python3 Gestisci.py migrare

Per verificare se il server Django funziona correttamente o meno, eseguire il seguente comando:

$ Python3 Gestisci.Py Runserver

Per creare il formapp Sotto django_pro Progetto, eseguire il seguente comando:

$ Python3 Gestisci.py startapp formapp

Crea il modulo HTML usando Django:

Apri il visualizzazioni.Py File che è dentro formapp cartella e modifica il suo contenuto con il seguente contenuto. Il seguente script verificherà se il modulo viene inviato o meno. Se il modulo viene inviato, il valore del richiesta.metodo sarà post e richiesta.INVIARE.Ottenere() Il metodo viene utilizzato per leggere i suoi valori inviati. IL è valido() La funzione verificherà se i dati del modulo sono validi o meno. Se questa funzione restituisce vera, un messaggio di successo con i dati dell'utente valido verrà stampato nel browser, altrimenti, verrà visualizzato il messaggio di errore che appare sul campo particolare del modulo. A parte questo, il render () il metodo viene utilizzato per caricare il modulo nel browser e Httpresponse () Il metodo viene utilizzato per inviare la risposta dal server al browser dopo aver inviato il modulo.

# Importa i moduli necessari
da Django.scorciatoie rendering di importazione
da formapp.moduli Import Studentform
da Django.Importa HTTP HttPresponse
def form_request (richiesta):
# Controllare che il modulo sia inviato o no
Se richiesta.Method == 'post':
Student = StudentForm (richiesta.INVIARE)
# Controllare che i dati del modulo sono validi o no
se studente.è valido():
# Leggi i valori inviati
nome = richiesta.INVIARE.get ("nome")
email = richiesta.INVIARE.Ottieni ("email")
nome utente = richiesta.INVIARE.Ottieni ("nome utente")
# Unisci i valori
data = ['La tua registrazione è completata correttamente.
", 'Nome:', nome, '
"," Email: ", email,"
',' Nome utente: ', nome utente]
# Restituisci i valori del modulo come risposta
return httpresponse (dati)
altro:
# Visualizza il modulo HTML
Student = StudentForm ()
reso render (richiesta ", modulo.html ", 'forma': studente)

Creare forme.Py dentro il formapp cartella e aggiungere il seguente contenuto. Il seguente script creerà una forma di quattro campi. IL nome Il campo è definito per prendere i dati dei caratteri e può essere lungo 40 caratteri. IL e-mail Il campo è definito per prendere qualsiasi indirizzo email valido utilizzando i dati dei caratteri e può essere lungo 50 caratteri. IL nome utente Il campo è definito per prendere i dati dei caratteri e può essere lungo 20 caratteri. IL parola d'ordine Il campo è definito per prendere i dati dei caratteri e può essere un minimo di 10 caratteri e un massimo di 20 caratteri lungo. IL forme.PasswordInput Il widget viene utilizzato per il campo Password per nascondere il contenuto del campo Password.

# Importa moduli moduli
dai moduli di importazione di Django
# Crea classe per definire i campi del modulo
Class StudentForm (moduli.Modulo):
name = forme.Charfield (etichetta = "nome completo", max_length = 40)
email = moduli.Emailfield (etichetta = "email", max_length = 50)
nome utente = forme.Charfield (etichetta = "nome utente", max_length = 20)
password = moduli.Charfield (etichetta = "password", min_length = 10, max_length = 20, widget = forms.PasswordInput)

Crea una cartella denominata modelli dentro il formapp cartella. Vai al Modelli sezione di le impostazioni.Py file e imposta la posizione del modello cartella per il Dirs proprietà.

impostazioni.Py

Modelli = [

'Dirs': ['/home/fahmida/django_pro/formapp/templates']
,
"

Creare modulo.html dentro il modello cartella con il seguente contenuto.

% csrf_token % viene utilizzato nello script HTML per prevenire gli attacchi CSRF (RICHIESTA CRUSSI). modulo.as_p caricherà la forma django progettata da forme.Py file. Quando il Invia Il pulsante viene premuto, i dati del modulo verranno inviati al server.





Modulo di registrazione dell'utente



% csrf_token %
modulo.as_p



Apri il URL.Py dal django_pro cartella e modificare il contenuto con il seguente contenuto.

Qui, il 'Registrati/' Il percorso viene utilizzato per caricare il modulo nel browser.

# Importa i moduli necessari
da Django.percorso di importazione degli URL
Dalle visualizzazioni delle importazioni di formapp
# Metodo di chiamata per visualizzare il modulo
urlpatterns = [
Path ('Register/', Visualizzazioni.form_request)
"

Apri qualsiasi browser e digita il seguente URL per caricare il modulo di registrazione dell'utente nel browser.

http: // localhost: 8000/register

La seguente uscita apparirà dopo aver eseguito l'URL. La convalida per il campo vuoto, il valore massimo di lunghezza dei campi di nome, e -mail e password e i valori di lunghezza minima e massima del campo password verranno controllati dopo aver inviato il modulo.

Il seguente output mostra che il campo password non è valido. Secondo il modulo, la lunghezza del valore della password deve essere tra 10-20 caratteri. 5 caratteri sono stati dati come input nella seguente forma. Per questo, il modulo mostra il messaggio di errore.

Dopo aver inserito l'output valido in ogni campo del modulo, verrà visualizzato il seguente output.

Conclusione:

Il modo di creare un modulo di registrazione degli utenti molto semplice nell'applicazione Django è stato mostrato in questo tutorial. Django ha molti metodi per creare diversi tipi di campi del modulo, come charfield (), emailfield (), textfiled, ecc. L'attività di validazione del modulo diventa molto più semplice quando il modulo è progettato per forma Django.