Turinys
Naudotojų duomenų fiksavimas yra labai svarbus žiniatinklio programoms, šis fiksavimas gali būti iš anksto nustatyti duomenys, pvz., Reikšmės pasirinkite laukus arba radijo mygtukai, nes tai taip pat gali būti atviras tekstas, pvz., įvesties tekstas arba teksto sritis, kai tikimės šiek tiek išsamesnės informacijos.Visi šie duomenų fiksavimo būdai turi bendrą bruožą, be to, kad jie yra HTML elementai, kad jie turi būti formos viduje, o forma yra talpykla, kurioje dedame elementus, fiksuojančius vartotojo duomenis, ir tada galime juos siųsti HTTP GET metodai arba POST pastarasis yra dažniausiai naudojamas.
Mūsų formos laukai
The formos generavimas Django Tai labai panašu į modelio generavimą, nes taip pat naudojama deklaratyvi forma, su kuria kiekvieną elementą priskiriame kaip formos klasės atributą.
PrisimintiNepaisant minėto panašumo, modeliai ir formos turi keletą svarbių skirtumų, vienas iš jų yra tas, kad jie skiriasi tuo, kaip gali rasti ir atpažinti laukus, pavyzdžiui, modelis patikrina, ar atributas turi prisidėti_klasės () metodas, vietoj to forma ieško, ar atributas iš tikrųjų yra laukas, ir ne tik patikrina, ar tai yra egzempliorius Django.forms.fields.Field.
Formų generavimas
Norėdami sukurti formą, pirmiausia turime sukurti klasę, kurioje ji bus, mes padarysime savo formos klasę formos modulis ir pridedame jį į naują failą pavadinimu formos.py programos aplanke.
Viduje mes sukursime „Meta“ klasę, šioje klasėje nurodysime, kuriam modeliui bus taikoma mūsų forma, tada, mūsų nuomone, nurodysime formos klasę ir galiausiai ištuštinsime programos šabloną. Toliau pateiktame paveikslėlyje pamatysime formos klasę:
Paskutinis žingsnis yra parodyti formą atitinkamame šablone, tam mes naudosime formos kontekstinis kintamasis kad būtų galima spausdinti laukus. Šiame kode galime pamatyti, ką turime omenyje:
DIDELIS