'use strict'; const { Model } = require('sequelize'); module.exports = (sequelize, DataTypes) => { class article extends Model { static associate(models) { article.belongsTo(models.user, { foreignKey: 'submittedBy', onDelete: 'SET NULL', onUpdate: 'CASCADE', as: 'submitter', }) article.belongsTo(models.user, { as: 'reviewer', foreignKey: 'reviewedBy', onDelete: 'SET NULL', onUpdate: 'CASCADE', }) } } article.init({ title: DataTypes.STRING, content: DataTypes.STRING, submittedBy: DataTypes.STRING, reviewedBy: DataTypes.STRING }, { sequelize, modelName: 'article', tableName: 'articles', }); return article; };