【发布时间】:2020-07-22 13:04:57
【问题描述】:
在我的程序中:
电影.js
import { DataTypes } from 'sequelize'
import Actor from './actor'
import ActorMovies from './actormovies'
import { sequelize } from '../../db/seq'
const Movie = sequelize.define('Movie', { name: DataTypes.STRING });
Movie.belongsToMany(Actor, { through: ActorMovies });
export default Movie
actor.js
import { DataTypes } from 'sequelize'
import Movie from './movie'
import ActorMovies from './actormovies'
import { sequelize } from '../../db/seq'
const Actor = sequelize.define('Actor', { name: DataTypes.STRING });
Actor.belongsToMany(Movie, { through: ActorMovies });
export default Actor
actormovies.js
import { DataTypes } from 'sequelize'
import Movie from './movie'
import Actor from './actor'
import { sequelize } from '../../db/seq'
const ActorMovies = sequelize.define('ActorMovies', {
MovieId: {
type: DataTypes.INTEGER,
references: {
model: Movie,
key: 'id'
}
},
ActorId: {
type: DataTypes.INTEGER,
references: {
model: Actor,
key: 'id'
}
}
});
export default ActorMovies
会报错
throw new Error(`${this.name}.belongsToMany called with something that's not a subclass of Sequelize.Model
我猜它可能在movie.js和actor.js中使用了不同的sequelize,但我不确定。
是否有人已经看到类似的错误?我搜索了几天没有任何合适的问题,如果有人可以帮助我将不胜感激,
谢谢!
【问题讨论】:
标签: node.js sequelize.js