Создание записей в базе данных в Redux
На прошлых занятиях мы подготовили все, чтобы заполнить нашу базу данными. Давайте приступим.
Давайте откроем наше приложение с продуктами,
а в нем файл server.js
. Сначала мы
определимся сколько и каких объектов с данными
нам нужно. Продавцов у нас 4
, пусть на каждого
из них приходится по 3
продукта. Введем
для этого две константы сразу после строчек
с импортом:
const NUM_SELLERS = 4
const PRODS_PER_SELLER = 3
Теперь в конце файла перед экспортом воркера
сделаем цикл for, в котором мы с помощью
create
создадим записи в базе данных
для наших 4
продавцов:
for (let i = 0; i < NUM_SELLERS; i++) {
const newSeller = db.seller.create(createSellerData(i))
}
На каждого продавца у нас приходится 3
продукта поэтому мы в цикле для продавцов
сделаем еще один вложенный for, в котором
будем создавать записи для продуктов:
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)
}
}
Отлично! На этом мы закончили работу с базой данных.
Нам осталось только сделать еще одну
вещь. Нам нужно, чтобы в объекте с
продуктом в поле seller
передавался
id продавца. Давайте ниже после циклов
for напишем еще одну функцию
serializeProduct
, в которой мы
будем добавлять этот id:
const serializeProduct = (product) => ({
...product,
seller: product.seller.id,
})
Откройте ваше приложение со студентами.
Пусть у вас будет три преподавателя, а
на каждого из них приходится 3
студента.
Ознакомившись с материалом этого урока,
воспользуйтесь циклом for и создайте
в базе данных 3
записи с преподавателями.
Далее сделайте второй цикл for внутри цикла
из предыдущей задачи, с помощью которого
создайте 3
студентов.
После вложенных циклов for напишите функцию
serializeStudent
, как показано в уроке,
которая будет вносить в поле teacher
id
преподавателя.