Django

Validácia formulára v Django

Validácia formulára v Django

Overenie formulára je veľmi dôležitá úloha pre každú webovú aplikáciu na zadanie platných údajov do databázy. Používatelia aplikácie nebudú môcť vložiť neplatné údaje, ak sú údaje formulára pred odoslaním overené. Django sa nazýva rámec založený na MVT (Model View Template), kde úlohu kontrolóra vykonáva sám tento rámec. Úlohy spojené s databázou vykonáva Model a údaje sa prezentujú šablóne pomocou príkazu Zobraziť. Polia formulára sa generujú na základe konkrétneho modelu, ktorý po overení vloží údaje do databázy Django. Jeden typ overenia vykonáva prehliadač na základe typu poľa, ktorý je definovaný v modeli. Pomocou je platné() funkcia je ďalší spôsob, ako skontrolovať údaje formulára, či sú po odoslaní formulára platné alebo nie. Tento tutoriál vám ukáže, ako je možné po overení formulára vložiť údaje do databázy Django.

Predpoklady

Pred precvičením scenára tohto tutoriálu musíte splniť nasledujúce úlohy:

  1. Nainštalujte si Django verzie 3+ na Ubuntu 20+ (najlepšie)
  2. Vytvorte projekt Django
  3. Spustením servera Django skontrolujte, či server funguje správne alebo nie.

Nainštalujte si aplikáciu Django

1. Spustením nasledujúceho príkazu vytvorte aplikáciu Django s názvom validationapp.

$ python3 spravovať.py startapp validáciaapp

2. Spustením nasledujúceho príkazu vytvorte používateľa, ktorý sa používa na prístup k databáze Django. Ak ste používateľa vytvorili už predtým, nemusíte spustiť príkaz.

$ python3 spravovať.py vytvorí superužívateľa

3. Pridajte názov aplikácie do súboru INSTALLED_APP časť py spis.

INSTALLED_APPS = [

„validationapp“
]

4. Vytvorte priečinok s názvom šablóny vnútri validationapp priečinok a nastavte šablóny umiestnenie aplikácie v ŠABLÓNY časť py spis.

TEMPLATES = [

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

Validácia formulára Django

Musíte zadať kód nasledujúcich súborov, aby ste mohli skontrolovať úlohu overenia formulára v Django.

Vytvorte model

Otvor modely.py súbor z priečinka aplikácie a pridajte nasledujúci skript, aby ste vytvorili štruktúru súboru zákazníkov stôl. Tabuľka bude obsahovať štyri polia. Jedná sa o celé meno, e-mail, kontaktné číslo a typ zákazníka. Tu sa typ_zákazníka vytvorí podľa typu výberu. To znamená, že používateľ musí zvoliť ľubovoľnú hodnotu z rozbaľovacieho zoznamu.

modely.py

# Importujte modely
od djanga.db import modely
# Definujte triedu pre vstup zákazníka
trieda Zákazník (modely.Model):
# Definujte hodnoty pre typ zákazníka
typ = (
('platené', 'platené'),
(„zadarmo“, „zadarmo“)
)
# Definujte polia pre tabuľku zákazníkov
full_name = models.CharField (max_length = 50)
email = modely.EmailField ()
contact_no = modely.CharField (max_length = 20)
customer_type = models.CharField (max_length = 32, možnosti = typ, predvolené = 'zadarmo')

Zaregistrujte model

Pridajte nasledujúci skript do admin.py súbor na registráciu Zákazník model v databáze Django na prístup k zákazníkov tabuľka z administratívneho dashboardu Django.

admin.py

# Importovať modul správcu
od djanga.sk prispieť import
# Importujte model zákazníka
od .modely importujú zákazníka
# Zaregistrujte model zákazníka
admin.stránky.zaregistrovať sa (zákazník)

Vytvoriť formy.py do priečinka aplikácie a pridajte nasledujúci skript na definovanie triedy na vytvorenie formulára založeného na uvedených poliach aplikácie zákazník Model.

formy.py

# Import formulárov
z dovozných formulárov django
# Import zákazníckeho modelu
z validácieapp.modely importujú zákazníka
# Definujte triedu pre formulár pre zákazníka
trieda CustomerForm (formuláre.ModelForm):
trieda Meta:
model = zákazník
fields = ('full_name', 'email', 'contact_no', 'customer_type')

Vytvorte šablónu

Vytvorte súbor HTML s názvom zákazník.html s nasledujúcim skriptom na zobrazenie predtým navrhnutej formy s Uložiť tlačidlo.

zákazník.html





Registračný formulár používateľa


Vstupný formulár zákazníka

% csrf_token%
formulár.as_p



Vložte údaje po overení formulára

Upraviť obsah názory.py súbor s nasledujúcim skriptom. AddCustomer () sa v skripte používa funkcia na vloženie nového záznamu do súboru zákazníkov tabuľka po overení formulára. Ak sa formulár neodošle, formulár sa načíta pomocou zákazník.html spis. Ak je formulár predložený s platnými údajmi, nový záznam sa vloží pomocou znaku uložiť () funkcia a správa o úspechu sa vytlačí v prehliadači s možnosťou pridať ďalší záznam.

názory.py

# Importovať modul HttpResponse
od djanga.http.import odpovedí HttpResponse
# Import modulu vykreslenia
od djanga.skratky importovať vykreslenie
# Import CustomerForm
z validácieapp.formuláre importovať CustomerForm
# Definujte funkciu na pridanie záznamu zákazníka
def AddCustomer (požiadavka):
na požiadanie.method == "POST":
form = CustomerForm (požiadavka.POST)
# Ak sú údaje formulára platné alebo nie
ak forma.je platné():
skúste:
# Uložte údaje formulára do databázy
formulár.uložiť ()
# Definujte správu pre používateľa
data = ['

Údaje zákazníka boli vložené správne.


Pridaj ďalší']
# Vráťte odpoveď
vrátiť HttpResponse (údaje)
okrem:
prejsť
inak:
# Definujte objekt formulára
form = CustomerForm ()
# Zobraziť formulár na zadanie zákazníka
vrátiť vykreslenie (požiadavka, 'zákazník.html ', ' form ': form)

Upravte adresy URL.py súbor projektu Django s nasledujúcim skriptom. V skripte boli definované dve cesty. „zákazník“ cesta sa použije na zobrazenie formulára na pridanie nových záznamov o zákazníkoch. The „admin /“ cesta sa použije na zobrazenie Django Administration Dashboard.

adresy URL.py

# Importovať modul správcu
od djanga.sk prispieť import
# Importovať modul cesty
od djanga.cesta importu adries URL
# Pohľad na import
z pohľadov importu validationapp
# Definujte cestu pre zákazníka a správcu
urlpatterns = [
cesta („zákazník /“, zobrazenia.AddCustomer),
cesta ('admin /', admin.stránky.adresy URL)
]

Spustite server Django a vykonajte z prehliadača nasledujúcu adresu URL, aby sa zobrazil formulár na zadanie zákazníka. Ak Uložiť stlačíte tlačidlo bez pridania akýchkoľvek údajov do formulára, potom sa zobrazí nasledujúca stránka s chybami pre udržanie povinných polí prázdnych.

Ak sú pre e-mailové pole nastavené neplatné údaje, zobrazí sa nasledujúca chyba.

Nasledujúce informácie sa zobrazia, ak je formulár odoslaný s platnými údajmi. Ak používateľ klikne naPridaj ďalší' odkaz, formulár sa znovu objaví a vloží údaje pre ďalší záznam.

Záver

Spôsob overenia formulára Django sme v tomto výučbe ukázali vytvorením jednoduchej aplikácie Django. Uvedená aplikácia pomôže vývojárom v Django pochopiť dôležitosť overovania formulárov a budú schopní to robiť správne.

Hry Najlepšie linuxové distribúcie pre hry v roku 2021
Najlepšie linuxové distribúcie pre hry v roku 2021
Operačný systém Linux prešiel dlhou cestou od svojho originálneho, jednoduchého serverového vzhľadu. Tento OS sa za posledné roky nesmierne vylepšil a...
Hry Ako zachytiť a streamovať vašu hernú reláciu v systéme Linux
Ako zachytiť a streamovať vašu hernú reláciu v systéme Linux
V minulosti sa hranie hier považovalo iba za hobby, ale časom došlo v hernom priemysle k obrovskému nárastu z hľadiska technológie i počtu hráčov. Her...
Hry Najlepšie hry na hranie s ručným sledovaním
Najlepšie hry na hranie s ručným sledovaním
Oculus Quest nedávno predstavil skvelú myšlienku ručného sledovania bez ovládačov. Vďaka stále sa zvyšujúcemu počtu hier a aktivít, ktoré vykonávajú p...