Criação de modelos de dados para o banco de dados no Redux

Nesta lição, preencheremos os modelos de dados que criamos na lição anterior.

Vamos abrir nossa aplicação de produtos, e nela o arquivo server.js. Vamos começar com o modelo de produto. Os dados que receberemos para ele são: nome, descrição, preço, quantidade, reações e vendedor deste produto. Vamos adicionar essas propriedades necessárias com seus tipos de valores, bem como as relações entre os modelos no objeto - tudo como em um banco de dados real. Como você notou, os valores dos campos para reação e vendedor estão ligados aos respectivos modelos:

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

Vamos passar para o modelo de dados do vendedor. Aqui precisamos de dados sobre o nome e os produtos que este vendedor listou (o valor é obtido do modelo de produto. Um vendedor pode ter vários produtos):

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

E finalmente, o modelo para reações. A reação pode ser 'boa', 'mais ou menos' e 'ruim'. Ela também se refere a algum produto. Vamos escrever assim:

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

Nosso modelo de banco de dados está pronto!

Задание 1

Abra sua aplicação de estudantes. Tendo revisado o material desta lição, preencha os esqueletos dos seus três modelos de dados student, teacher e vote com as propriedades necessárias, tipos de valores e relações.