Į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ų:

api/server.jsconst 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:

api/server.jsfor (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:

api/server.jsfor (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:

api/server.jsconst serializeProduct = (product) => ({
  ...product,
  seller: product.seller.id,
})
Задание 1

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.

Задание 2

Tada padarykite antrą for ciklą ankstesnio uždavinio ciklo viduje, kurio pagalba sukurkite 3 studentus.

Задание 3

Po įdėtų for ciklų parašykite funkciją serializeStudent, kaip parodyta pamokoje, kuri įdės į lauką teacher dėstytojo id.