sequelize aquí lo siento de antemano. Estoy haciendo algunas asociaciones de tablas en mi aplicación entre las posts y los comments de users
Comentarios Modelo
import { DataTypes } from 'sequelize'; export const comment = (db) => { db.define('comment', { commentContent: { type: DataTypes.TEXT, allowNull: false } }); } export const setModelRelationships = (db) => { const { user, post, comment } = db.models user.hasMany(post); user.hasMany(comment); post.belongsTo(user); post.hasMany(comment); comment.belongsTo(post); comment.belongsTo(user); } Verificar mis comments de db tiene 6 columnas:
identificación | comentarioContenido | creado en | actualizado en | ID de la publicación | ID de usuario |
si quiero darle a postId un nombre personalizado como: commentedOnPostId , ¿cómo puedo hacer esto con Sequelize?
Puede usar la opción foreignKey en asociaciones como esta:
post.hasMany(comment, { foreignKey: 'commentedOnPostId' }); comment.belongsTo(post, { foreignKey: 'commentedOnPostId' }); Es importante indicar el mismo valor de la opción foreignKey en ambas asociaciones.