Tengo una base de datos de Postgres existente. A través de sequelize-auto, generé los modelos para la base de datos existente. Por ejemplo, veamos la tabla tc_devices ( tc_devices.js ):
const Sequelize = require('sequelize'); module.exports = function(sequelize, DataTypes) { return sequelize.define('tc_devices', { id: { autoIncrement: true, autoIncrementIdentity: true, type: DataTypes.INTEGER, allowNull: false, primaryKey: true }, name: { type: DataTypes.STRING(128), allowNull: false }, uniqueid: { type: DataTypes.STRING(128), allowNull: false, unique: "tc_devices_uniqueid_key" }, lastupdate: { type: DataTypes.DATE, allowNull: true }, positionid: { type: DataTypes.INTEGER, allowNull: true }, groupid: { type: DataTypes.INTEGER, allowNull: true, references: { model: 'tc_groups', key: 'id' } }, attributes: { type: DataTypes.STRING(4000), allowNull: true }, phone: { type: DataTypes.STRING(128), allowNull: true }, model: { type: DataTypes.STRING(128), allowNull: true }, contact: { type: DataTypes.STRING(512), allowNull: true }, category: { type: DataTypes.STRING(128), allowNull: true }, disabled: { type: DataTypes.BOOLEAN, allowNull: true, defaultValue: false } }, { sequelize, tableName: 'tc_devices', schema: 'public', timestamps: false, indexes: [ { name: "tc_devices_pkey", unique: true, fields: [ { name: "id" }, ] }, { name: "tc_devices_uniqueid_key", unique: true, fields: [ { name: "uniqueid" }, ] }, ] }); }; En database.js de datos.js, me conecto a la base de datos:
const { Sequelize } = require('sequelize'); const sequelize = new Sequelize(database, user, password, { host, port, dialect: 'postgres', logging: false }) async function db_connection(){ try{ await sequelize.authenticate(); console.log('Connection has been estabilished successfully.'); }catch{ console.log('Unable to connect to the database.'); } } db_connection() ¿Cómo puedo hacer una consulta simple en la tabla tc_devices? ¿Qué debo importar en database.js de datos.js? en tc_devices exporto la function(sequelize, DataTypes) ... pero no puedo entender cómo hacer una consulta en database.js de datos.js con esta función... ¿podría ayudarme? Muchas gracias.
Debe registrar todos los modelos y sus asociaciones antes de ejecutar la primera consulta con estos modelos. Mira mi respuesta aquí .
Tan pronto como lo haga, puede ejecutar consultas como esta:
// assuming db already stores all model definitions const allRecords = await db.tcDevices.findAll({})