我有两个型号:
River.associate = models => {
River.hasMany(models.Fish, { as: 'Fishes' });
};
Fish.associate = models => {
Fish.belongsTo(models.River);
};
type River {
id: ID!
name: String!
alternative: String!
geojson: JSON
fishes: [Fish]
}
type Fish {
id: ID!
name: String!
}
How would I findAll Rivers given a list of Fish ID's? 我不确定查询必须如何查找graphql和sequelize?
type Query {
river(id: ID!): River
**rivers(fishIds: ARRAY): River ??????**
fishes: [Fish]
}
Query: {
rivers: (_, { fishIds }) => {
return River.findAll({
where: {
fishes: fishIds
}
});
},
}
1 回答
您可以为包含的每个模型指定
WHERE
子句 . 此外,这样做会将预期加载转换为内部联接(这是您想要的),除非您明确将required
参数设置为false
.这意味着你应该能够做到这样的事情: