добавление ограничения внешнего ключа с помощью Sequelize

#mysql #foreign-keys #sequelize.js

#mysql #внешние ключи #sequelize.js

Вопрос:

Я работаю с ассоциациями sequelize. Я видел много способов добавления внешних ключей, правильно ли я это делаю?

Что я пытаюсь сделать, так это добавить ограничение внешнего ключа в мою таблицу profile_personals из моей родительской таблицы (users, «user_id»)

 const Sequelize = require('sequelize')
const db = require('../database/db.js')
const Users = require('../model/User.js')

module.exports = db.sequelize.define(
    'profile_personals',
    {   
        id: {
            type: Sequelize.INTEGER,
            primaryKey: true,
            autoIncrement: true
        },

        biography: {
            type: Sequelize.STRING
        },
        fk_user_id: {
            type: Sequelize.INTEGER,

            references: {
                // This is a reference to another model
                model: Users,
                // This is the column name of the referenced model
                key: 'user_id'
            }
        }
    },
    {
        timestamps: false
    }
)
  

Ответ №1:

Вы пробовали метод ассоциации? Я думаю, что методы HasMany or HasOne сработают.

http://docs.sequelizejs.com/class/lib/associations/has-many.js ~HasMany.html

 user.hasMany(db.profile_personals, {foreignKey: 'user_id'})

  

Комментарии:

1. Да, я пробовал это раньше в моем db.js файл, но я продолжаю получать NULL в столбце моего внешнего ключа