Įrašų sukūrimas duomenų bazėje Redux
Ankstesnėse pamokose mes pasiruošėme viską, kad pildytume mūsų duomenų bazę. Pradėkime.
Atidarykime mūsų produktų programą,
o joje failą server.js. Pirmiausia mes
nuspręsime, kiek ir kokius duomenų objektus
mums reikia. Pardavėjų turime 4, tegu kiekvienam
iš jų tenka po 3 produktus. Įveskime
tam dvi konstantas iškart po importavimo eilučių:
const NUM_SELLERS = 4
const PRODS_PER_SELLER = 3
Dabar failo pabaigoje prieš eksportuojant worker'į
padarykime for ciklą, kuriame mes naudodami
create sukursime įrašus duomenų bazėje
mūsų 4 pardavėjams:
for (let i = 0; i < NUM_SELLERS; i++) {
const newSeller = db.seller.create(createSellerData(i))
}
Kiekvienam pardavėjui mums tenka 3
produktai, todėl mes cikle pardavėjams
padarysime dar vieną įdėtą for, kuriame
būsime kuriantys įrašus produktams:
for (let i = 0; i < NUM_SELLERS; i++) {
const newSeller = db.seller.create(createSellerData(i))
for (let j = 0; j < PRODS_PER_SELLER; j++) {
const newProduct = createProductData(newSeller)
db.product.create(newProduct)
}
}
Puiku! Šiuo metu mes baigėme darbą su duomenų baze.
Mums liko padaryti tik dar vieną
dalyką. Mums reikia, kad objekte su
produktu lauke seller būtų perduodamas
pardavėjo id. Parašykime žemiau po ciklų
for dar vieną funkciją
serializeProduct, kurioje mes
įdėsime šį id:
const serializeProduct = (product) => ({
...product,
seller: product.seller.id,
})
Atidarykite savo studentų programą.
Tegul jūs turite tris dėstytojus, o
kiekvienam iš jų tenka 3 studentai.
Susipažinę su šios pamokos medžiaga,
pasinaudokite ciklu for ir sukurkite
duomenų bazėje 3 įrašus su dėstytojais.
Tada padarykite antrą for ciklą ankstesnio uždavinio ciklo viduje, kurio pagalba
sukurkite 3 studentus.
Po įdėtų for ciklų parašykite funkciją
serializeStudent, kaip parodyta pamokoje,
kuri įdės į lauką teacher dėstytojo
id.