Ustvarjanje zapisov v podatkovni bazi v Reduxu
V prejšnjih lekcijah smo vse pripravili, da zapolnimo našo podatkovno bazo. Pa začnimo.
Odprimo našo aplikacijo s produkti,
in v njej datoteko server.js. Najprej se
odločimo, koliko in kakšnih objektov s podatki
potrebujemo. Prodajalcev imamo 4, naj bo za vsakega
od njih po 3 produktov. Vnesimo
za to dve konstanti takoj za vrsticami
z importom:
const NUM_SELLERS = 4
const PRODS_PER_SELLER = 3
Zdaj na koncu datoteke pred exportom workerja
naredimo zanko for, v kateri bomo s pomočjo
create ustvarili zapise v podatkovni bazi
za naših 4 prodajalcev:
for (let i = 0; i < NUM_SELLERS; i++) {
const newSeller = db.seller.create(createSellerData(i))
}
Za vsakega prodajalca imamo 3
produktov, zato bomo v zanki za prodajalce
naredili še eno gnezdeno zanko for, v kateri
bomo ustvarjali zapise za produkte:
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)
}
}
Odlično! S tem smo zaključili delo s podatkovno bazo.
Ostalo nam je še le ena
stvar. Potrebujemo, da se v objektu s
produktom v polje seller posreduje
id prodajalca. Napišimo še eno funkcijo
serializeProduct pod zankami for,
v kateri bomo dodali ta id:
const serializeProduct = (product) => ({
...product,
seller: product.seller.id,
})
Odprite vašo aplikacijo s študenti.
Naj bo tri učitelje, in
za vsakega od njih 3 študentov.
Po preučitvi gradiva te lekcije,
uporabite zanko for in ustvarite
v podatkovni bazi 3 zapise z učitelji.
Nato naredite drugo zanko for znotraj zanke
iz prejšnje naloge, s pomočjo katere
ustvarite 3 študentov.
Po gnezdenih zankah for napišite funkcijo
serializeStudent, kot je prikazano v lekciji,
ki bo v polje teacher vnesla id
učitelja.