序列化内连接

Mah*_*aya 2 javascript node.js sequelize.js

我需要使用sequelize进行内连接。我尝试了一些东西,但我无法理解它。任何人都可以帮助我;

我有两个模型,即用户和付款。我想为用户提供付款数据。

我基本上分享了下面的示例有人为我解释一下吗?我怎样才能做到呢?

完全需要 ' SELECT * FROM Users INNER JOIN Payments ON Users.id=Payments.user_id WHERE Users.email=?';

Users.findOne({
where:{
user_email:payload.email
},
include:[{
model:Payments,
where:['Payments.user_id = Users.id']
}]
})
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

更新:添加了这个。给出错误后:包括意外的。元素必须是模型、关联或对象。

  Users.hasMany(Payments, { foreignKey: "user_id" });
  Payments.belongsTo(Users, { foreignKey: "id" });
Run Code Online (Sandbox Code Playgroud)

Rif*_*eza 5

在您的关系上,您可以将其required设为内部联接。

Users.findOne({
    where: {
        user_email: payload.email
    },
    include: [{
        model: Payments,
        where: ['Payments.user_id = Users.id'],
        required: true
    }]
})
Run Code Online (Sandbox Code Playgroud)