OBS. Disculpe mi código, mi proyecto es como un patio de recreo que configuré solo para estudiar. Sequelize se está conectando a la base de datos llamando a la autenticación, pero mis modelos están "indefinidos", muy triste...
Mostraré una imagen para mostrar la estructura de mi proyecto.
mis archivos de índice y producto son así:
índice:
'use strict'; const fs = require('fs'); const path = require('path'); const Sequelize = require('sequelize'); const basename = path.basename(__filename); const env = process.env.NODE_ENV || 'development'; const config = require(__dirname + '/../config/config.json')[env]; const db = {}; let sequelize; if (config.use_env_variable) { sequelize = new Sequelize(process.env[config.use_env_variable], config); } else { sequelize = new Sequelize(config.database, config.username, config.password, config); } fs .readdirSync(__dirname) .filter(file => { return (file.indexOf('.') !== 0) && (file !== basename) && (file.slice(-3) === '.js'); }) .forEach(file => { const model = require(path.join(__dirname, file))(sequelize, Sequelize.DataTypes); db[model.name] = model; }); Object.keys(db).forEach(modelName => { if (db[modelName].associate) { db[modelName].associate(db); } }); db.sequelize = sequelize; db.Sequelize = Sequelize; module.exports = db;modelo de producto
'use strict'; const { Model } = require('sequelize'); module.exports = (sequelize, DataTypes) => { class produto extends Model { /** * Helper method for defining associations. * This method is not a part of Sequelize lifecycle. * The `models/index` file will call this method automatically. */ static associate(models) { // define association here } }; produto.init({ id: { type: DataTypes.NUMBER, primaryKey: true}, titulo: DataTypes.STRING, preco: DataTypes.NUMBER }, { sequelize, modelName: 'produto', }); return produto; };