我正在尝试加载彼此关联的2个模型。问题是当使用类似于文档的范围时,必须包含

我的场景是使用具有多个关联的Study模型的Product模型。

有几个Study模型尚不具有任何Product关联(它们不是最初创建的)。

我的定义范围如下:

const Study = sequelize.define(
  'study',
   ...
    scopes: {
      withProducts: {
        include: [
          {
            model: Product
          }
        ]
      },


有20个Study条目,但是以下内容仅返回14,因为6个Study条目没有任何Product关系。

const allStudies = await Study.scope('withProducts').findAll()


任何帮助是极大的赞赏!

最佳答案

在这种情况下,您必须显式设置required: false

const Study = sequelize.define(
  'study',
   ...
    scopes: {
      withProducts: {
        include: [
          {
            required: false, // HERE
            model: Product
          }
        ]
      },

10-05 23:53