Files
miriamgemeinde/models/PasswordResetToken.js

46 lines
923 B
JavaScript

const { DataTypes } = require('sequelize');
module.exports = (sequelize) => {
const PasswordResetToken = sequelize.define('PasswordResetToken', {
id: {
type: DataTypes.UUID,
defaultValue: DataTypes.UUIDV4,
primaryKey: true
},
userId: {
type: DataTypes.INTEGER,
allowNull: false,
references: {
model: 'Users',
key: 'id'
}
},
token: {
type: DataTypes.STRING,
allowNull: false,
unique: true
},
expiresAt: {
type: DataTypes.DATE,
allowNull: false
},
used: {
type: DataTypes.BOOLEAN,
defaultValue: false
}
}, {
timestamps: true,
createdAt: 'created_at',
updatedAt: 'updated_at'
});
PasswordResetToken.associate = (models) => {
PasswordResetToken.belongsTo(models.User, {
foreignKey: 'userId',
as: 'user'
});
};
return PasswordResetToken;
};