1"use strict";
2module.exports = (sequelize, DataTypes) => {
3 const User = sequelize.define("User", {
4 username: DataTypes.STRING,
5 email: DataTypes.STRING,
6 passwordHash: DataTypes.STRING,
7 role: DataTypes.ENUM("admin", "regular"),
8 resetPasswordToken: DataTypes.STRING,
9 avatar: DataTypes.TEXT,
10 website: DataTypes.STRING,
11 });
12
13 // User.associate = function (models) {
14 // models.User.hasMany(models.Task);
15 // };
16
17 User.associate = function (models) {
18 models.Post.belongsTo(models.User, {
19 as: "author",
20 foreignKey: "createdByUser",
21 });
22
23 models.Reply.belongsTo(models.User, {
24 as: "replied_by",
25 foreignKey: "createdByUser",
26 });
27 };
28
29 return User;
30};