El modelo Certificacion representa las certificaciones obtenidas por un usuario en Matchify, permitiendo almacenar información como el nombre de la certificación, la organización emisora, la fecha de obtención y una descripción.
import { DataTypes } from 'sequelize';
import sequelize from '../config/database.js';
import User from './User.js';
const Certificacion = sequelize.define('Certificacion', {
nombre: {
type: DataTypes.STRING,
allowNull: false,
},
organizacionEmisora: {
type: DataTypes.STRING,
},
fechaObtencion: {
type: DataTypes.DATEONLY,
},
descripcion: {
type: DataTypes.TEXT,
},
usuarioId: {
type: DataTypes.INTEGER,
allowNull: false,
references: {
model: User,
key: 'id',
},
onUpdate: 'CASCADE',
onDelete: 'CASCADE',
},
}, {
tableName: 'certificaciones',
timestamps: true,
});
export default Certificacion;
nombre: Nombre de la certificación, obligatorio.organizacionEmisora: Organización que emitió la certificación, opcional.fechaObtencion: Fecha en la que se obtuvo la certificación, almacenada solo como fecha (sin hora).descripcion: Descripción de la certificación, opcional.usuarioId: Referencia al usuario que posee esta certificación, asociando el registro con el modelo User.tableName: 'certificaciones': Define el nombre de la tabla en la base de datos como certificaciones.timestamps: true: Activa los campos createdAt y updatedAt para registrar las fechas de creación y actualización.Este modelo permite gestionar las certificaciones obtenidas por los usuarios en Matchify, manteniendo un registro completo de sus logros académicos y profesionales.