Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

608
Vistas
¿La asociación Sequelize no es una subclase de Sequelize.model?

Estoy tratando de crear una asistencia entre mis tablas como esta:

 Customers.associate = (models) => { Customers.hasMany(models.Addresses, {foreignKey: 'id', as: 'aId', onDelete: "cascade", }); Customers.hasMany(models.Orderline, { onDelete: "cascade", }); };

Tengo una tabla de clientes donde un cliente puede tener muchas direcciones si lo desea y muchos pedidos. Sigo recibiendo este error:

throw new Error ( ${this.name}.hasMany called with something that's not a subclass of Sequelize.Model ); Error: Customers.hasMany llamó con algo que no es una subclase de Sequelize.Model

He buscado sugerencias en línea, pero todavía estoy atascado. Gracias por cualquier ayuda/orientación.

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Primero debe verificar si registra todos los modelos ANTES de registrar cualquier asociación. Puedes mirar cómo hacerlo en mi respuesta .
En segundo lugar, debe corregir la primera definición de asociación hasMany porque dudo mucho que Direcciones tenga una columna de id como una columna de clave externa que apunte a Clientes:

 // assuming Addresses has customerId as a foreign key column we need to indicate it: Customers.hasMany(models.Addresses, {foreignKey: 'customerId', as: 'addresses', onDelete: "cascade", });

Tal vez sería una buena idea indicar una clave externa en otra asociación hasMany también:

 Customers.hasMany(models.Orderline, { foreignKey: 'customerId', onDelete: "cascade", });
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda