Креирање записа у бази података у Redux-у

На претходним часовима смо припремили све да напунимо нашу базу подацима. Хајде да почнемо.

Хајде да отворимо нашу апликацију са производима, а у њој фајл server.js. Прво ћемо одлучити колико и каквих објеката са подацима нам треба. Продаваца имамо 4, нека на сваког од њих буде по 3 производа. Унесимо за то две константе одмах после редова са импортом:

api/server.jsconst NUM_SELLERS = 4
const PRODS_PER_SELLER = 3

Сада на крају фајла пре експорта воркера направимо циклус for, у којем ћемо помоћу create креирати записе у бази података за наших 4 продаваца:

api/server.jsfor (let i = 0; i < NUM_SELLERS; i++) {
  const newSeller = db.seller.create(createSellerData(i))
}

На сваког продавца нам долази по 3 производа па ћемо у циклусу за продавце направити још један унутрашњи for, у којем ћемо креирати записе за производе:

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)
  }
}

Одлично! На овоме смо завршили рад са базом података.

Остаје нам само да урадимо још једну ствар. Потребно је да у објекту са производом у пољу seller буде прослеђен id продавца. Хајде да испод циклуса for напишемо још једну функцију serializeProduct, у којој ћемо додати овај id:

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

Отворите вашу апликацију са студентима. Нека буде три предавача, а на сваког од њих долази по 3 студента. Упознавши се са материјалом овог часа, искористите циклус for и креирајте у бази података 3 записа са предавачима.

Задание 2

Затим направите други циклус for унутар циклуса из претходног задатка, помоћу којег ћете креирати 3 студената.

Задание 3

Након унутрашњих циклуса for напишите функцију serializeStudent, као што је приказано на часу, која ће уносити у поље teacher id предавача.