在已有别名的表上进行联接

时间:2018-07-17 01:54:31

标签: node.js sequelize.js

我在需要别名的自引用表上具有关联。

我当前正在尝试查询该表两次。但是我遇到了一个
Transaction (OneTimeDebits) is not associated to Transaction!错误。

由于自引用关联需要别名,因此无法用其他别名查询关联。

有什么办法可以解决这个问题?

models.Transaction.hasMany(models.Transaction, { as: 'Debits', foreignKey: 'PaymentId' });
models.Transaction.belongsTo(models.Transaction, { as: 'Payment', foreignKey: 'PaymentId' });

models.Transaction.findAll({
  where: {
    '$OneTimeDebits.id$': null,
  },
  include: [{
          model: models.Transaction,
          where: {
            OneTime: true,
          },
          required: false,
          as: 'OneTimeDebits',
        },
        {
          model: models.Transaction,
          where: {
            FinalDebit: true,
          },
          as: 'FinalDebits',
  }],
});

0 个答案:

没有答案