35 lines
711 B
JavaScript
35 lines
711 B
JavaScript
const coreModel = require("./../core/models");
|
|
|
|
module.exports = (sequelize, DataTypes) => {
|
|
const Genre = sequelize.define(
|
|
"genre",
|
|
{
|
|
id: { type: DataTypes.INTEGER, primaryKey: true, autoIncrement: true },
|
|
name: DataTypes.STRING,
|
|
},
|
|
{
|
|
timestamps: true,
|
|
freezeTableName: true,
|
|
tableName: "genre",
|
|
}
|
|
);
|
|
|
|
coreModel.call(this, Genre);
|
|
|
|
Genre.associate = function (models) {
|
|
Genre.belongsToMany(models.movie, {
|
|
through: models.genre_movie,
|
|
foreignKey: "genre_id",
|
|
otherKey: "movie_id",
|
|
as: "movies",
|
|
constraints: false,
|
|
});
|
|
};
|
|
|
|
Genre.allowFields = function () {
|
|
return ["id", "name"];
|
|
};
|
|
|
|
return Genre;
|
|
};
|