0
同じモデルが2回関連付けられているモデルがあります。以下は、モデル定義の下Sequelize Query Fail
const RiStockSplitType = sequelize.define("RiStockSplitType",
// Columns
base.addColumns({
"id": {type: DataTypes.INTEGER, primaryKey: true, autoIncrement: true},
"splitType": {type: DataTypes.INTEGER, defaultValue: 1, field: "split_type"}
}, DataTypes),
// Configs
new base.DefaultModelConfig("table")
);
RiStockSplitType.associate = function (models, value) {
value.belongsTo(models.ReservationInfo, {
foreignKey: {
allowNull: false,
name:"reservation_info_id"
},
as: "reservation_info"
});
value.belongsTo(models.ReservationInfo, {
foreignKey: {
allowNull: false,
name:"split_type_ri_id"
},
as:"split_type_ri"
});
};
return RiStockSplitType;
は私が
RiStockSplitType.findAll({
include: [{
model: ReservationInfo,
as:"reservation_info"
}],
})
)}).then(function(){console.log(arguments)}).catch(err => {console.error('ERROR:', err);});
上記で生成されたSQLクエリは
Executing (default): SELECT `RiStockSplitType`.`id`, `RiStockSplitType`.`split_type` AS `splitType`, `RiStockSplitType`.`created_on` AS `createdOn`, `RiStockSplitType`.`updated_on` AS `updatedOn`, `RiStockSplitType`.`reservation_info_id`, `RiStockSplitType`.`split_type_ri_id`, `reservation_info`.`id` AS `reservation_info.id`, `reservation_info`.`created_on` AS `reservation_info.createdOn`, `reservation_info`.`updated_on` AS `reservation_info.updatedOn`, `reservation_info`.`city_id` AS `reservation_info.city_id` FROM `warehouse_ristocksplittype` AS `RiStockSplitType` LEFT OUTER JOIN `warehouse_reservation_info` AS `reservation_info` ON `RiStockSplitType`.`reservation_info_id` = `reservation_info`.`id`;
で、私が手にエラーが
で焼成していますSequelizeQueryですSequelizeDatabaseError: Unknown column 'reservation_info.city_id' in 'field list'
Sequelize v4とNode 6.9.5を使用しています。 エラーの原因を特定できません。エラーに言及した列はDefaultModelConfigに渡された名前はwarehouse_reservationinfoであるのに対し、クエリはwarehouse_reservation_infoに参加しているReservationInfo
const ReservationInfo = sequelize.define("ReservationInfo",
// Columns
base.addColumns({
"id": {type: DataTypes.INTEGER, primaryKey: true, autoIncrement: true},
}, DataTypes),
// Configs,
new base.DefaultModelConfig("warehouse_reservationinfo"));
ReservationInfo.associate = function (models, value) {
value.belongsTo(models.City, {
foreignKey: {
allowNull: false,
name: 'city_id'
}
});
};
return ReservationInfo;
CLI経由でSQLクエリを実行しようとしましたか? –
@ YochaiAkokaはい私はやったと私は同じエラーが発生します。 –
ReservationInfoのモデル定義を投稿できますか? – Faz