Javascript Sequelize Association函数没有效果
我使用目前的Sequelize版本,并尝试在两个模型之间建立关联。实际上应该很简单,因为Sequelize提供了很多东西 但这一呼吁毫无效果。我用一个新的SQL数据库试过了。表本身是在没有任何外键的情况下创建的 数据库控制器 user.js subject.js 我找到了解决办法 必须在函数的最后调用await database.syncJavascript Sequelize Association函数没有效果,javascript,sequelize.js,Javascript,Sequelize.js,我使用目前的Sequelize版本,并尝试在两个模型之间建立关联。实际上应该很简单,因为Sequelize提供了很多东西 但这一呼吁毫无效果。我用一个新的SQL数据库试过了。表本身是在没有任何外键的情况下创建的 数据库控制器 user.js subject.js 我找到了解决办法 必须在函数的最后调用await database.sync const userModel = require('../model/user') const subjectModel = require('../mod
const userModel = require('../model/user')
const subjectModel = require('../model/subject')
const database = require('../db/database').sequeliceInstance
async function setupAssociations () {
await database.sync()
// user + subject
userModel.hasMany(subjectModel)
subjectModel.belongsTo(userModel)
// subject and topic
subjectModel.hasMany(topicModel)
topicModel.belongsTo(subjectModel)
// topic and question
topicModel.hasMany(questionModel)
questionModel.belongsTo(topicModel)
// question and answer
questionModel.hasMany(answerModel)
answerModel.belongsTo(questionModel)
return Promise.resolve()
}
const Sequelize = require('sequelize')
const db = require('../db/database').sequeliceInstance
const user = db.define('user', {
// attributes
firstName: {
type: Sequelize.STRING,
allowNull: false
},
lastName: {
type: Sequelize.STRING,
allowNull: false
},
email: {
type: Sequelize.STRING,
allowNull: false
},
title: {
type: Sequelize.STRING,
allowNull: false
},
password: {
type: Sequelize.TEXT,
allowNull: false
}
})
module.exports = user
const Sequelize = require('sequelize')
const db = require('../db/database').sequeliceInstance
const subject = db.define('subject', {
// attributes
subjectName: {
type: Sequelize.TEXT,
allowNull: false
}
})
module.exports = subject