Spaces:
Paused
Paused
| const { DataTypes } = require('sequelize'); | |
| module.exports = sequelize => { | |
| const User = sequelize.define( | |
| 'User', | |
| { | |
| id: { | |
| type: DataTypes.UUID, | |
| defaultValue: DataTypes.UUIDV4, | |
| primaryKey: true, | |
| }, | |
| username: { | |
| type: DataTypes.STRING(50), | |
| allowNull: false, | |
| unique: true, | |
| }, | |
| email: { | |
| type: DataTypes.STRING(100), | |
| allowNull: false, | |
| unique: true, | |
| validate: { isEmail: true }, | |
| }, | |
| passwordHash: { | |
| type: DataTypes.STRING(255), | |
| allowNull: false, | |
| }, | |
| isActive: { | |
| type: DataTypes.BOOLEAN, | |
| defaultValue: true, | |
| }, | |
| isVerified: { | |
| type: DataTypes.BOOLEAN, | |
| defaultValue: false, | |
| }, | |
| role: { | |
| type: DataTypes.ENUM('admin', 'developer', 'user'), | |
| defaultValue: 'user', | |
| }, | |
| }, | |
| { | |
| tableName: 'users', | |
| timestamps: true, | |
| } | |
| ); | |
| return User; | |
| }; | |