Привет друзья, в этой части мы продолжим читать и обновлять данные.

Сначала мы открываем UserController.js, и вы можете увидеть этот последний код в part3

А. Чтение данных

давайте создадим функцию для чтения всех данных

export const getUsers = async (req, res) => {
  try {
    const response = await User.findAll();
    res.status(200).json(response);
  } catch (error) {
    console.log(error.message);
  }
};

подробное объяснение построчно этого кода вы можете увидеть в части 3

const response = await User.findAll();

важным кодом является findAll()запрос для чтения всех данных в таблице users,для подробного запроса https://sequelize.org/docs/v6/core-concepts/ модель-запрос-основы/

давайте перейдем к UserRoute.js и добавим маршрут

import express from "express";
import { createUser, getUsers } from "../controllers/UserController.js";

const router = express.Router();

router.post("/users", createUser);
router.get("/users", getUsers);

export default router;

весь этот код, мы должны импортировать функцию getUsers

import { createUser, getUsers } from "../controllers/UserController.js";

и добавьте маршрут для получения пользователей методом GET после createUserroute

router.get(“/users”, getUsers);

попробуем на почтальоне

не забудьте выбрать метод и нажать отправить

мы получили все данные из базы данных.

Давайте на следующем шаге найдем данные по идентификатору, то есть прочитаем отдельные данные, вернемся к UserController.js и добавим этот код.

export const getUserById = async (req, res) => {
  try {
    const response = await User.findOne({
      where: {
        id: req.params.id,
      },
    });
    res.status(200).json(response);
  } catch (error) {
    console.log(error.message);
  }
};
const response = await User.findOne({
  where: {
    id: req.params.id,
  },
});

для поиска одиночных данных мы используем метод findOne с параметром id

req.params.id

и этот код для получения идентификатора из параметра в URL-адресе.

Мы снова переходим к UserRoute.js и добавляем маршрутизацию, полученную этим методом.

import {
  createUser,
  getUsers,
  getUserById,
} from "../controllers/UserController.js";

Не забудьте импортировать getUserById.

router.get("/user/:id", getUserById);

добавьте этот код после метода getUsers, для передачи данных ID в URL используйте /:id

это весь код и давайте попробуем с почтальоном

прежде чем пытаться getUserById, давайте добавим данные

и у нас есть 2 данных в базе данных

для получения отдельных данных используйте этот URL и после user/ добавьте id

этот результат, вы можете изменить идентификатор параметра, например 2, от пользователя antonio

Б. Обновление данных

Хорошо, следующим шагом мы создадим обновление функции и откроем UserController.js.

добавить этот код

export const updateUser = async (req, res) => {
  try {
    await User.update(req.body, {
      where: { id: req.params.id },
    });
    res.status(201).json({ msg: "User updated" });
  } catch (error) {
    console.log(error.message);
  }
};
await User.update(req.body, {
  where: { id: req.params.id },
});

этот код похож на создание данных, но мы добавляем параметр id для обновления по отдельным данным и методу update

Перейдите к UserRoute.js, чтобы определить маршрутизацию и добавить функцию updateUser.

import {
  createUser,
  getUsers,
  getUserById,
  updateUser,
} from "../controllers/UserController.js";
router.patch("/user/:id", updateUser);

для маршрутизации аналогично getUserById, но для метода используйте PATCH

ладно попробуем на почтальоне

не забудьте выбрать метод PATCH и передать параметр ID.

в этом случае мы используем данные Антонио, вы можете изменить имя, адрес электронной почты или пол

в случае успеха мы получили этот ответ и давайте снова проверим с помощью метода getUserById на почтальоне

перейти на метод GET

и видим, мы успешно обновляем данные

— — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — —

Создать простой CRUD API с помощью NodeJS - Установка | Часть 1

«Создание простого CRUD API с помощью NodeJS — подключение к базе данных| Часть 2"

Создание простого CRUD API с помощью NodeJS — создание данных| Часть 3

Создание простого CRUD API с помощью NodeJS — чтение и обновление данных | Часть 4

Создать простой CRUD API с помощью NodeJS — удалить данные | Часть 5