Sequelize.js 使用外键sequelize进行查询时出现的问题
我拥有这个模型Sequelize.js 使用外键sequelize进行查询时出现的问题,sequelize.js,Sequelize.js,我拥有这个模型 'use strict' var Sequelize = require('sequelize'); var db = require('../../config/database'); const TransactionModel = db.define('transactions', { id : { type: Sequelize.INTEGER, primaryKey: true }, guid: {
'use strict'
var Sequelize = require('sequelize');
var db = require('../../config/database');
const TransactionModel = db.define('transactions', {
id : {
type: Sequelize.INTEGER,
primaryKey: true
},
guid: {
type: Sequelize.STRING
},
});
module.exports = TransactionModel
我拥有第二个模型
'use strict'
var Sequelize = require('sequelize');
var db = require('../../config/database');
const transactionModel = require('../models/transactionModel')
const accessCredentialsApiModel = db.define('transactions_items', {
guid: {
type: Sequelize.STRING
},
transaction_id : {
field : 'transaction_id',
type: Sequelize.INTEGER,
references: 'transactions',
key: 'id'
},
created_at : {
type : Sequelize.DATE
},
updated_at : {
type : Sequelize.DATE
},
qtd_event : {
type: Sequelize.INTEGER
},
amount: {
type: Sequelize.DECIMAL(10, 2)
}
});
transactionModel.hasMany(accessCredentialsApiModel);
module.exports = accessCredentialsApiModel
我通过将外键放置在第二个模型中来使用外键关系的关联。但现在是时候提出如下的问题了
let transactions = await transactionModel.findAll({
where: {
entity_id: arrayEntities[i].id,
},
include: [
{ model: transactionsItemsModel}
],
raw: true
});
console.log(transactions)
我收到了错误信息
SequelizeDatabaseError: Unknown column 'transactions_items.transactionId' in 'field list'
我找不到问题的解决方案,有人能帮我吗?错误说明它正在查找
transactionId
,但您定义的是transaction\u id
。您可以这样告诉sequelize外键和源键应该是什么
transactionModel.hasMany(accessCredentialsApiModel, {foreignKey: 'id', sourceKey: 'transaction_id'});