Django

Az űrlap érvényesítése Djangóban

Az űrlap érvényesítése Djangóban

Az űrlapellenőrzés nagyon fontos feladat minden webalkalmazás számára, hogy érvényes adatokat adjon meg az adatbázisban. Az alkalmazás felhasználói nem tudnak érvénytelen adatokat beszúrni, ha az űrlapadatokat a beküldés előtt ellenőrzik. A Django-t MVT (Model View Template) alapú keretrendszernek hívják, ahol a vezérlő feladatát maga ez a keretrendszer végzi. Az adatbázissal kapcsolatos feladatokat a Model végzi, és az adatokat a Nézet használatával jeleníti meg a sablon. Az űrlap mezői az adott modell alapján jönnek létre, amely az adatokat érvényesítés után beilleszti a Django adatbázisba. Az érvényesítés egyik típusát a böngésző végzi a modellben definiált mezőtípus alapján. Használni a érvényes() függvény egy másik módja annak, hogy ellenőrizze az űrlap adatait, hogy érvényesek-e vagy sem az űrlap elküldése után. Ez az oktatóanyag megmutatja, hogyan lehet az adatokat az űrlap érvényesítése után beilleszteni a Django adatbázisba.

Előfeltételek

Az oktatóanyag szkriptjének gyakorlása előtt el kell végeznie a következő feladatokat:

  1. Telepítse a Django 3+ verziót az Ubuntu 20+ verzióra (lehetőleg)
  2. Hozzon létre egy Django projektet
  3. Futtassa a Django szervert annak ellenőrzésére, hogy a szerver megfelelően működik-e vagy sem.

Állítson be egy Django alkalmazást

1. Futtassa a következő parancsot egy Django alkalmazás létrehozásához validationapp.

$ python3 kezelni.py startapp validationapp

2. Futtassa a következő parancsot a Django adatbázis eléréséhez használt felhasználó létrehozásához. Ha korábban létrehozta a felhasználót, akkor nem kell futtatnia a parancsot.

$ python3 kezelni.py létrehozza a túlfelhasználót

3. Adja hozzá az alkalmazás nevét a INSTALLED_APP része a py fájl.

INSTALLED_APPS = [

'validationapp'
]

4. Hozzon létre egy nevű mappát sablonok benne validationapp mappát, és állítsa be a sablonok az alkalmazás helye a Sablonok része a py fájl.

Sablonok = [

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

Django forma érvényesítése

Az űrlapellenőrzési feladat ellenőrzéséhez a Django-ban meg kell írnia a következő fájlok kódját.

Hozza létre a modellt

Nyissa meg a modellek.py fájlt az alkalmazás mappából, és a következő szkript hozzáadásával hozza létre a ügyfelek asztal. A táblázat négy mezőt tartalmaz. Ezek a teljes_név, az e-mail, az elérhetőség_száma és az ügyfél_típusa. Itt a customer_type kiválasztási típus szerint jön létre. Ez azt jelenti, hogy a felhasználónak bármilyen értéket ki kell választania a legördülő listából.

modellek.py

# Modellek importálása
djangótól.db import modellek
# Definiálja az ügyfél belépésének osztályát
osztály Ügyfél (modellek.Modell):
# Definiálja az ügyféltípus értékeit
type = (
(„fizetett”, „fizetett”),
(„ingyenes”, „ingyenes”)
)
# Határozza meg az ügyféltábla mezőit
teljes_név = modellek.CharField (max_hossz = 50)
email = modellek.EmailField ()
contact_no = modellek.CharField (max_hossz = 20)
ügyfél_típus = modellek.CharField (max_hossz = 32, választás = típus, alapértelmezett = 'szabad')

Regisztrálja a modellt

Adja hozzá a következő parancsfájlt a az admin.py fájl a Vevő modell a Django adatbázisban a ügyfelek táblázat a Django adminisztratív irányítópultról.

admin.py

# Adminisztrációs modul importálása
djangótól.közreműködés import admin
# Ügyfélmodell importálása
tól től .modellek importálják az Ügyfelet
# Ügyfélmodell regisztrálása
admin.webhely.regisztráció (Ügyfél)

Teremt formák.py az alkalmazás mappájába, és adja hozzá a következő szkriptet az osztály definiálásához, hogy létrehozza az űrlapot a a vásárló modell.

formák.py

# Form űrlapok importálása
django import űrlapokból
# Ügyfélmodell importálása
from validationapp.modellek importálják az Ügyfelet
# Határozza meg az ügyfél űrlap osztályát
osztály CustomerForm (űrlapok.ModelForm):
osztály Meta:
modell = Ügyfél
mezők = ('teljes_név', 'e-mail', 'kapcsolattartó_no', 'ügyfél_típus')

Hozzon létre sablont

Hozzon létre egy HTML nevű fájlt vevő.html a következő szkript segítségével jelenítse meg a korábban tervezett űrlapot a Mentés gomb.

vevő.html





Felhasználói regisztrációs űrlap


Ügyfél nevezési lap

% csrf_token%
űrlap.as_p



Adatok beszúrása az űrlap érvényesítése után

Módosítsa a nézetek.py a következő szkriptet tartalmazó fájl. AddCustomer () függvény a szkriptben új rekord beszúrására szolgál a ügyfelek tábla az űrlap érvényesítése után. Ha az űrlapot nem nyújtják be, akkor az űrlapot a a vásárló.html fájl. Ha az űrlapot érvényes adatokkal együtt nyújtják be, akkor a mentés() funkció és egy sikerüzenet kerül kinyomtatásra a böngészőben azzal a lehetőséggel, hogy újabb rekordot adhat hozzá.

nézetek.py

# HttpResponse modul importálása
djangótól.http.válasz import HttpResponse
# Render modul importálása
djangótól.parancsikonok import render
# Importálja a CustomerForm elemet
from validationapp.űrlapok importálják a CustomerFormot
# Definiálja a funkciót az ügyfélbejegyzés hozzáadásához
def AddCustomer (kérés):
ha kérik.módszer == "POST":
form = CustomerForm (kérés.POST)
# Ha az űrlapadatok érvényesek vagy sem
ha forma.érvényes():
próbáld ki:
# Mentse az űrlap adatait az adatbázisba
forma.mentés()
# Határozza meg az üzenetet a felhasználó számára
adatok = ['

Az Ügyfél adatait megfelelően illesztette be.


Adj hozzá egy másikat']
# Adja vissza a választ
return HttpResponse (adatok)
kivéve:
passz
más:
# Definiálja az űrlap objektumot
form = CustomerForm ()
# Mutassa meg az ügyfél belépési űrlapját
return render (kérés, 'ügyfél.html ', ' form ': form)

Módosítsa a URL-ek.py a Django projekt fájlja a következő szkript segítségével. Két utat határoztak meg a szkriptben. 'vevő/' elérési útvonal lesz az űrlap megjelenítéséhez az új ügyfélrekordok hozzáadásához. A 'admin /' elérési utat fogjuk használni a Django Administration Dashboard megjelenítéséhez.

URL-ek.py

# Adminisztrációs modul importálása
djangótól.közreműködés import admin
# Útvonal modul importálása
djangótól.URL importálási útvonal
# Import nézet
validationapp import nézetekből
# Definiálja az ügyfél és az adminisztrátor elérési útját
urlpatterns = [
elérési út ('ügyfél /', nézetek.AddCustomer),
elérési út ('admin /', admin.webhely.URL-ek)
]

Futtassa a Django szervert, és futtassa a következő URL-t a böngészőből az ügyfél belépési űrlapjának megjelenítéséhez. Ha a Mentés gombot, anélkül, hogy bármilyen adatot adna az űrlaphoz, akkor a következő oldal jelenik meg hibákkal a kötelező mezők üresen tartása érdekében.

Ha érvénytelen adatokat állított be az e-mail mezőhöz, akkor a következő hiba jelenik meg.

A következő információk jelennek meg, ha az űrlapot érvényes adatokkal nyújtják be. Ha a felhasználó rákattint aAdj hozzá egy másikat' linkre kattintva az űrlap ismét megjelenik a következő rekord adatainak beszúrásához.

Következtetés

A Django űrlap érvényesítésének módját ebben az oktatóanyagban bemutattuk egy egyszerű Django alkalmazás létrehozásával. Az említett alkalmazás segít a Django fejlesztőknek megérteni az űrlap érvényesítés fontosságát, és képesek lennének megfelelően megtenni.

Az egér és az érintőpad beállításainak módosítása az Xinput használatával Linux alatt
A legtöbb Linux disztribúció alapértelmezés szerint „libinput” könyvtárral szállítja a rendszer bemeneti eseményeit. Feldolgozhatja a Wayland és az X ...
Az X-Mouse Button Control segítségével az egér gombjait másképp alakíthatja át a különböző szoftvereknél
Lehet, hogy szüksége van egy eszközre, amely megváltoztathatja az egér vezérlését minden használt alkalmazással. Ebben az esetben kipróbálhatja az úgy...
Microsoft Sculpt Touch vezeték nélküli egér áttekintés
Nemrég olvastam a Microsoft Sculpt Touch vezeték nélküli egér és úgy döntött, hogy megveszi. Egy ideig használat után úgy döntöttem, hogy megosztom ve...