Как добавить ещё одну дочернюю запись к родительской в Sequelize + express?

Есть Модель:

 const seq = require('../db')
const {DataTypes} = require('sequelize')

    const Actor = seq.define('actor',{
    id: {type: DataTypes.INTEGER, primaryKey: true, autoIncrement: true},
    name: {type: DataTypes.STRING, unique: false, allowNull: false},
    img: {type: DataTypes.STRING,},
    isDeath:{type: DataTypes.BOOLEAN},
    date_of_birth:{type: DataTypes.DATE,},
    date_of_death:{type: DataTypes.DATE,},
    // country_of_birth:{type: DataTypes.STRING,},
    // country_of_death:{type: DataTypes.STRING,},

    
})

   const Movie = seq.define('movie',{
    id: {type: DataTypes.INTEGER, primaryKey: true, autoIncrement: true},
    movie_name:{type: DataTypes.STRING,},
    description:{type: DataTypes.STRING},
    chapters:{type: DataTypes.INTEGER},
    year:{type: DataTypes.DATE},
    mov_video:{type: DataTypes.STRING},
    img: {type: DataTypes.STRING},
})

//actors to movies, movies to actors m:m
Actor.belongsToMany(Movie, {through: "ActorsFilms"})
Movie.belongsToMany(Actor, {through: "ActorsFilms"})

Есть Контроллер:

 const { Actor, Movie, ActorsFilms } = require("../models/models");

class ActorController {
  async create(req, res, next) {
    try {
      let actor = await Actor.create(req.body, { include: [Movie] });
      return res.json(actor);
    } catch (err) {}
  }
  async getAll(req, res, next) {
    try {
      let actors = await Actor.findAll({ include: Movie });
      return res.json(actors);
    } catch (err) {}
  }

  async getOne(req, res, next) {
    try {
      let actor = await Actor.findByPk(req.params.id, { include: Movie });
      return res.json(actor);
    } catch (err) {}
  }

  async updateActor(req, res, next) {
    try {
      const { id } = req.params;
      await Actor.update(req.body, {
        where: { id: id },
      }).then(async (mov_create) => {
        await Movie.create(req.body, {});
      });

      let updated = await Actor.findByPk(id, { include: [Movie] });
      return res.json(updated);
    } catch (err) {}
  }
}

module.exports = new ActorController();

Вопрос: Как правильно прописать updateActor(), что бы при редактировании данных актёра можно было добавить(обновить) фильм?


Ответы (0 шт):