Javascript 在嵌套的sequelize查询中,仅获取某些属性
下面是我从数据库中获取节目的查询,以及与之相关的地点和乐队。 我真的只想知道乐队的名字和地点。(Javascript 在嵌套的sequelize查询中,仅获取某些属性,javascript,mysql,node.js,sequelize.js,eager-loading,Javascript,Mysql,Node.js,Sequelize.js,Eager Loading,下面是我从数据库中获取节目的查询,以及与之相关的地点和乐队。 我真的只想知道乐队的名字和地点。(name是这两个表中的字段。)不过,下面的代码获取的是整个记录,而不仅仅是我想要的字段 const getAllShows = async (req, res) => { try { const shows = await Show.findAll({ include: [ { model: User, as: 'b
name
是这两个表中的字段。)不过,下面的代码获取的是整个记录,而不仅仅是我想要的字段
const getAllShows = async (req, res) => {
try {
const shows = await Show.findAll({
include: [
{ model: User, as: 'bands', through: { attributes: ['name'] } },
{ model: Venue, through: { attributes: ['name'] }}
],
});
res.status(200).send(shows);
}
catch(err) {
res.send(400);
}
}
属性
放错了位置-它不属于至
(顺便说一句,根据您的关联,您甚至可能不需要至
)
尝试如下更改:
{model:User,as:'bands',属性:['name']},
您也可以考虑字段别名,例如:
{model:User,as:'bands',属性:[['name','band_name']]},
嗯