запрашивая запись и ее ассоциации с sequelize - PullRequest
1 голос
/ 25 января 2020

Для таблицы Show и таблицы Venue со следующими ассоциациями:

Show.belongsTo(Venue, { foreignKey: { name: 'id_venue', allowNull: false } });
Venue.hasMany(Show);

Я пытаюсь захватить одно место и все связанные с ним шоу.

const getSingleVenue = async (req, res) => {
    try {
        const { venueName } = req.params;
        const venue = await Venue.findOne({
            where: {
                name: venueName,
            },
            include: [
                { model: Show }
            ]
        })
        res.send(venue);
    }
    catch(err) {
        console.log(err);
        res.send(400);
    }
}

Прямо сейчас, я застрял на ошибке Unknown column 'show.venueId' in 'field list'.

Не уверен, как отредактировать мои ассоциации, чтобы дать продолжение, что он ищет.

1 Ответ

2 голосов
/ 25 января 2020

Проблема в том, что Venue.hasMany(Show); Y не определен внешний ключ.

Заменить некоторый код:

Show.belongsTo (Venue, {foreignKey: {name: 'id_venue', allowNull: false}}); Venue.hasMany (Показать);

По

Show.belongsTo(Venue, { foreignKey: { name: 'id_venue', allowNull: false } });
Venue.hasMany(Show, { foreignKey: { name: 'id_venue', as: shows } };
...