急切加载多个嵌套关联

Eager load multiple and nested associations

我有三个模型,ABC,其中:

A.hasMany(B);
B.belongsTo(A);
B.hasMany(C);
C.belongsTo(B);

我是这样查询的:

await A.findOne({
    where: { id: id },
    include: [
      {
        model: B,
      },
    ],
  });

如何在查询A时return属于BC个对象?

最后在另一个问题的评论中找到了解决方案。 我需要用这样的数组传递包含 [{ all: true, nested: true }],我最终得到这样的东西:

await A.findOne({
    where: { id: id },
    include: [{ all: true, nested: true }],
});

我没有测试它循环时会发生什么,也没有找到关于它的文档,如果有好心人发现它,请随时发表评论。

编辑:

嵌套包含也有效:

await A.findOne({
    where: { id: id },
    include: [
      {
        model: B,
        include: [
          {
            model: C,
          },
        ],
      },
    ],
});