Django

Formas apstiprināšana Django

Formas apstiprināšana Django

Veidlapas validācija ir ļoti svarīgs uzdevums jebkurai tīmekļa lietojumprogrammai, lai ievadītu derīgus datus datu bāzē. Lietojumprogrammas lietotāji nevarēs ievietot nederīgus datus, ja veidlapas dati ir apstiprināti pirms iesniegšanas. Django sauc par MVT (Model View Template) balstītu ietvaru, kur kontroliera uzdevumu veic pati šī sistēma. Ar datu bāzi saistītos uzdevumus veic modelis, un dati tiek parādīti veidnē, izmantojot skatu. Veidlapas lauki tiek ģenerēti, pamatojoties uz konkrēto modeli, kas datus pēc validācijas ievietos Django datu bāzē. Viena veida pārbaudi pārlūks veic, pamatojoties uz laukā tipu, kas definēts modelī. Izmantojot ir derīgs() funkcija ir vēl viens veids, kā pēc formas iesniegšanas pārbaudīt veidlapas datus, vai tie ir derīgi. Šī apmācība parādīs, kā datus var ievietot Django datu bāzē pēc formas apstiprināšanas.

Priekšnoteikumi

Pirms praktizēt šīs apmācības skriptu, jums ir jāveic šādi uzdevumi:

  1. Instalējiet Django versiju 3+ Ubuntu 20+ (vēlams)
  2. Izveidojiet Django projektu
  3. Palaidiet Django serveri, lai pārbaudītu, vai serveris darbojas pareizi.

Iestatiet Django lietotni

1. Palaidiet šo komandu, lai izveidotu Django lietotni ar nosaukumu validationapp.

$ python3 pārvaldīt.py startapp validationapp

2. Palaidiet šo komandu, lai izveidotu lietotāju, kas tiek izmantots, lai piekļūtu Django datu bāzei. Ja esat iepriekš izveidojis lietotāju, komanda nav jāpalaiž.

$ python3 pārvaldīt.py rada liellietotāju

3. Pievienojiet lietotnes nosaukumu mapē INSTALLED_APP daļa no py failu.

INSTALLED_APPS = [

'validationapp'
]

4. Izveidojiet mapi ar nosaukumu veidnes iekšpusē validationapp mapi un iestatiet veidnes lietotnes atrašanās vieta Veidnes daļa no py failu.

PARAUGI = [

… .
'DIRS': ['/ home / fahmida / django_pro / validationapp / templates'],
… .
,
]

Django formas apstiprināšana

Lai pārbaudītu veidlapas validēšanas uzdevumu Django, jums ir jāraksta kods šiem failiem.

Izveidojiet modeli

Atveriet modeļiem.py failu no lietotnes mapes un pievienojiet šo skriptu, lai izveidotu klientiem tabula. Tabulā būs četri lauki. Tie ir vārds_vards, e-pasts, kontakta_nav un klienta tips. Šeit klienta tips tiek izveidots pēc atlases veida. Tas nozīmē, ka lietotājam nolaižamajā sarakstā jāizvēlas jebkura vērtība.

modeļiem.py

# Importa modeļi
no django.db importēšanas modeļi
# Definējiet klientu ienākšanas klasi
klases klients (modeļi.Modelis):
# Definējiet klienta veida vērtības
tips = (
(“apmaksāts”, “apmaksāts”),
("bezmaksas", "bezmaksas")
)
# Definējiet klienta tabulas laukus
full_name = modeļi.CharField (maks. Garums = 50)
e-pasts = modeļi.EmailField ()
contact_no = modeļi.CharField (maks. Garums = 20)
klienta tips = modeļi.CharField (max_length = 32, options = type, default = 'free')

Reģistrējiet modeli

Pievienojiet šādu skriptu administrators.py failu reģistrēšanai Klients modeli Django datu bāzē, lai piekļūtu klientiem tabula no Django administratīvā paneļa.

admin.py

# Importēt administratora moduli
no django.ieguldījuma importēšanas administrators
# Importēt klienta modeli
no .modeļi importē klientu
# Reģistrējiet klienta modeli
admin.vietne.reģistrēties (klients)

Izveidot formas.py lietotnes mapē un pievienojiet šo skriptu, lai definētu klasi, lai izveidotu veidlapu, pamatojoties uz minētajiem laukiem klients modeli.

formas.py

# Veidlapu importēšanas modulis
no django importa veidlapām
# Importēt klienta modeli
no validationapp.modeļi importē klientu
# Definējiet klienta veidlapas klasi
klase CustomerForm (veidlapas.ModelForm):
klase Meta:
modelis = klients
lauki = ('pilns_nosaukums', 'e-pasts', 'kontakta_nav', 'klienta_tips')

Izveidot veidni

Izveidojiet HTML failu ar nosaukumu klientu.html ar šo skriptu, lai parādītu iepriekš izveidoto veidlapu ar Saglabāt pogu.

klientu.html





Lietotāja reģistrācijas veidlapa


Klienta pieteikuma veidlapa

% csrf_token%
veidlapa.as_p



Ievietojiet datus pēc formas apstiprināšanas

Mainīt programmas saturu skati.py failu ar šādu skriptu. AddCustomer () Funkcija tiek izmantota skriptā, lai ievietotu jaunu ierakstu klientiem tabulas pēc formas apstiprināšanas. Ja veidlapa netiek iesniegta, veidlapa tiks ielādēta, izmantojot klients.html failu. Ja veidlapa ir iesniegta ar derīgiem datiem, izmantojot ierakstu, tiks ievietots jauns ieraksts saglabāt () funkcija un veiksmes ziņojums tiks izdrukāts pārlūkprogrammā ar iespēju pievienot vēl vienu ierakstu.

skati.py

# Importējiet HttpResponse moduli
no django.http.atbildes importēšana HttpResponse
# Importēt renderēšanas moduli
no django.saīsnes importēt renderēšanu
# Importēt CustomerForm
no validationapp.veidlapas importē CustomerForm
# Definējiet funkciju, lai pievienotu klienta ierakstu
def AddCustomer (pieprasījums):
pēc pieprasījuma.metode == "POST":
forma = CustomerForm (pieprasījums.POST)
# Ja veidlapas dati ir vai nav derīgi
ja forma.ir derīgs():
mēģiniet:
# Saglabājiet veidlapas datus datu bāzē
formā.saglabāt ()
# Definējiet ziņojumu lietotājam
dati = ['

Klienta dati ir ievietoti pareizi.


Pievienojiet citu']
# Atgrieziet atbildi
atgriezties HttpResponse (dati)
izņemot:
iziet
cits:
# Definējiet formas objektu
forma = CustomerForm ()
# Parādiet klienta ievadīšanas veidlapu
atgriezt renderēšanu (pieprasījums, 'klients.html ', ' forma ': forma)

Mainīt URL.py Django projekta fails ar šādu skriptu. Skriptā ir noteikti divi ceļi. "klients /" ceļš tiks izmantots, lai parādītu veidlapu, lai pievienotu jaunus klientu ierakstus. The "admin /" ceļš tiks izmantots, lai parādītu Django administrācijas informācijas paneli.

URL.py

# Importēt administratora moduli
no django.ieguldījuma importēšanas administrators
# Importēšanas ceļa modulis
no django.URL importēšanas ceļš
# Importēšanas skats
no validationapp importēšanas skatiem
# Definējiet ceļu klientam un administratoram
urlpatterns = [
ceļš ('klients /', skati.AddCustomer),
ceļš ('admin /', admin.vietne.URL)
]

Palaidiet Django serveri un izpildiet šo URL no pārlūka, lai parādītu klienta ievadīšanas veidlapu. Ja Saglabāt poga tiek nospiesta, veidlapā nepievienojot nekādus datus, pēc tam parādīsies nākamā lapa ar kļūdām, lai aizpildītu nepieciešamos laukus.

Ja e-pasta laukam ir iestatīti nederīgi dati, tiks parādīta šāda kļūda.

Ja veidlapa tiek iesniegta ar derīgiem datiem, tiks parādīta šāda informācija. Ja lietotājs noklikšķina uzPievienot citu ' saite, veidlapa atkal parādīsies, lai ievietotu datus nākamajam ierakstam.

Secinājums

Django formas apstiprināšanas veids tika parādīts šajā apmācībā, izveidojot vienkāršu Django lietotni. Minētā lietotne palīdzēs Django izstrādātājiem saprast veidlapu validācijas nozīmi, un viņi to varēs izdarīt pareizi.

Kā nomainīt peles kreiso un labo pogu operētājsistēmā Windows 10
Tas ir diezgan normāli, ka visas datora peles ierīces ir ergonomiski izstrādātas lietotājiem ar labo roku. Bet ir pieejamas peles ierīces, kas ir īpaš...
Atdariniet peles klikšķus, virzot kursoru, izmantojot operētājsistēmā Windows 10 bezklikšķu peli
Peles vai tastatūras lietošana nepareizā pozā, ja to lieto pārmērīgi daudz, var izraisīt daudz veselības problēmu, tostarp spriedzi, karpālā kanāla si...
Pievienojiet peles žestus operētājsistēmai Windows 10, izmantojot šos bezmaksas rīkus
Pēdējos gados datori un operētājsistēmas ir ievērojami attīstījušās. Bija laiks, kad lietotājiem bija jāizmanto komandas, lai pārvietotos pa failu pār...