Django - pasirinktiniai laukai

Turinys
Turime didelį pasirinkimą lauko tipai kai dirbame su formomis DjangoTačiau ateina laikas, kai mums reikia patvirtinimo ar naujo elgesio, todėl galime be problemų pritaikyti savo laukus, naudodami Django.formos.
Darbo su pasirinktiniais laukais formose privalumas yra tas, kad mes neturime jaudintis dėl jų suderinamumo su kelios foninės programos tarsi turėtume susirūpinti kurdami modelyje naują lauko tipą.
Tinkinti laukai
A pasirinktinis laukas formoje leidžia mums sukurti paramą duomenų įvedimo tipams, kurių nėra daugelyje mums siūlomų parinkčių DjangoDėl to galime pasiekti labiau suasmenintų rezultatų, kurie padeda mūsų programai geriau pasiekti mūsų tikslus.
Kaip juos sukurti?Norėdami sukurti pasirinktinį lauką, turite tai padaryti paveldėti klasės Laukai įtrauktas į Django.formos, tokiu būdu mes garantuojame tinkamą jos veikimą pagal formą; Kitas aspektas, kurį jau minėjome, yra tai, kad tokio tipo laukus lengviau įgyvendinti, nes mums nereikia atsižvelgti į darbą su skirtingomis užpakalinėmis sistemomis, tai yra, naudojant kelias duomenų bazes, kaip tai būtų modelyje, nes tik įvertinsime eilutės tipo duomenis formoje, kai vartotojas įveda duomenis.
Patvirtinimas
Galbūt tai yra esminis aspektas kuriant naujus laukus, nes apibrėždami patvirtinimo tipą galime nustatyti lauko tipą, nes tikrinimas suteiks šiam laukui unikalų pobūdį.
Kaip įtraukti patvirtinimą?Norėdami įtraukti patvirtinimą, turime kreiptis švarus () metodas, šis metodas priima klasės objektą ir vertę vertinant, tada pagal mūsų sukurtus standartus šis metodas gali atskirti įvestus duomenis ir tai, ar jie atitinka mūsų patvirtinimą, jei ne, tai bus galėsime padaryti išimtį ir išsiųsti nustatytą klaidos pranešimą.
Toliau pateiktame paveikslėlyje pažiūrėkime kodą, kuriame generuojami du nauji tinkintų laukų tipai:

Čia matome, kaip pritaikome viską, apie ką kalbėjome, pirmiausia darome importas apie laukai viduje Django.formos kadangi mes turime naudoti klasę, mes sukuriame klasę, kuri šiuo atveju paveldės laukai.DecimalField, tai leidžia suprasti, kad mūsų naujas laukas bus skaitinis.
Tada mes apibrėžiame klaidą, vadinamą nepasiekiamasTai mums padeda, kai patvirtindami duomenis iškeliame išimtį, kad galėtume parodyti vartotoją vedantį pranešimą; tai suteikia mums galimybę gauti skirtingų tipų pranešimus apie skirtingas klaidas.
SvarbuGaliausiai perrašome švarus metodas kiekvienoje naujoje klasėje, kad galėtume parengti naują patvirtinimą, pirmiausia naudojame metodą super (). švarus () tai kviečia į švarų () klasės metodą laukai.DecimalFields tai mes galime patvirtinti, kad jie yra teisingas skaitinis tipas, prieš įvertindami mūsų pačių patvirtinimą, o tai neleidžia mums rasti įvestų duomenų tipo patvirtinimo, čia pažymimas paveldėjimo pranašumas.
Galiausiai mes patvirtiname savo sąlygas ir, jei jos neįvykdomos, mes darome klaidą; taigi mes jau sukūrėme pasirinktinį lauką.
Tuo baigiame mokymo programą su papildomu įrankiu, kuris leidžia mums kurti programas, kurios yra arčiau mūsų poreikių.Ar jums patiko ir padėjo ši pamoka?Galite apdovanoti autorių paspausdami šį mygtuką, kad suteiktumėte jam teigiamą tašką
wave wave wave wave wave