Kreiranje modela podataka za bazu podataka u Redux-u

Na ovom času ćemo popuniti modele podataka, koje smo kreirali na prošloj lekciji.

Hajde da otvorimo našu aplikaciju sa proizvodima, a u njoj fajl server.js. Počnimo sa modelom proizvoda. Podaci, koje ćemo za njega da dobijamo, su - naziv, opis, cena, količina, reakcije i prodavac datog proizvoda. Hajde da unesemo ova neophodna svojstva sa njihovim tipom vrednosti, kao i veze između modela u objekat - sve kao u pravoj bazi podataka. Kao što ste primetili vrednosti polja za reakciju i prodavca su povezane sa odgovarajućim modelima:

api/server.jsproduct: {
  id: primaryKey(nanoid),
  name: String,
  desc: String,
  price: Number,
  amount: Number,
  reactions: oneOf('reaction'),
  seller: oneOf('seller'),
},

Pređimo na model podataka za prodavca. Ovde su nam potrebni podaci o nazivu i proizvodima, koje je postavio dati prodavac (vrednost uzimamo iz modela proizvoda. Na jednog prodavca može da otpada nekoliko proizvoda):

api/server.jsseller: {
  id: primaryKey(nanoid),
  name: String,
  products: manyOf('product'),
},

I na kraju, model za reakcije. Reakcija kod nas može da bude 'dobro', 'ni to ni ovo' i 'loše'. Takođe ona se odnosi na neki proizvod. Tako da i zapišimo:

api/server.jsreaction: {
  id: primaryKey(nanoid),
  good: Number,
  soso: Number,
  bad: Number,
  product: oneOf('product'),
},

Model baze podataka kod nas je spreman!

Задание 1

Otvorite vašu aplikaciju sa studentima. Upoznavši se sa materijalom ove lekcije, ispunite zalihe vaša tri modela podataka student, teacher i vote neophodnim svojstvima, tipovima vrednosti i vezama.