在Sequelize where函数中指定型号名称

时间:2018-08-03 10:51:25

标签: sequelize.js

看下面的代码:

sequelize.where(
  sequelize.col('"organisations->organisation_users"."roleId"'),
  sequelize.col('"organisations->roles"."id"'),
),

我该怎么做?

sequelize.where(
   sequelize.col(organisation_users.roleId),
   sequelize.col(organisations.id),
),

整个查询:

context.params.sequelize = {
    raw: false,
    include: [{
      model: organisations,
      where: organisationId ? { id: organisationId } : {},
      include: [{
        model: roles,
        where: roleId ? { id: roleId } : {},
      }],
    }],
    where: single ? (
      sequelize.and(
        sequelize.where(
          sequelize.col('"organisations->organisation_users"."roleId"'),
          sequelize.col('"organisations->roles"."id"'),
        ),
        sequelize.where(
          sequelize.col('"organisations->organisation_users"."userId"'),
          sequelize.col("users.id")
        )
      )
    ) : {}
  }

从本质上讲,我让模型进行映射,而不必让我写出字符串。字符串方式目前可以使用,但也不太容易维护。

请记住,我有使用上述代码进行分页的查询,我相信sequelize中会有一些代码,当您传递限制之类的东西时会引起问题

任何帮助将不胜感激。

谢谢!

埃米尔

0 个答案:

没有答案