我有2张桌子。
预订。
客户。
我要在预订表中创建id_booking,因为我想创建唯一的ID,而不是像从续集中得出的“ id”一样。
如何从预订表中获取具有众多关系的客户? 注意:外键不是id(来自sequelize),而是id_booking(字符串,唯一)。
我的控制器
enter code here
db.Booking.findAll({
include: [{
model: db.Customer
}]
})
我的模特
module.exports = (sequelize, DataTypes) => {
const Booking = sequelize.define('Booking', {
id_booking: DataTypes.STRING,
agent:DataTypes.STRING,
}, {});
Booking.associate = function(models) {
Booking.hasMany(models.Customer, { foreignKey: 'id_booking'})
};
return Booking;
};
非常感谢您。
答案 0 :(得分:0)
如果您不想使用主键,则需要在sourceKey
关联中指定one to many,或者在反向targetKey
关系中指定belongsTo()
Booking.hasMany(models.Customer, {
foreignKey: 'id_booking',
sourceKey: 'id_booking',
});