【问题标题】:How to query for deeply nested parent properties with Sequelize in Nodejs如何在 Nodejs 中使用 Sequelize 查询深度嵌套的父属性
【发布时间】:2020-02-21 16:14:46
【问题描述】:

在 NodeJS 应用程序中使用 Sequelize (postgres),需要以下嵌套数据结构,其中在最低级别它应该只包含 ShortTermGoals,其中 MidtermGoalId 与父 MidtermGoal id 匹配。

const db = require('../../db/models');

db.Policies.findAll({
      include: [
        {
          model: db.Priorities,
          as: 'Priorities',
          include: [
            {
              model: db.MidtermGoals,
              as: 'MidtermGoals',
              include: [
                {
                  model: db.Agencies,
                  as: 'Agencies',
                  include: [
                    {
                      model: db.Divisions,
                      as: 'Divisions',
                      include: [
                        {
                          model: db.ShortTermGoals,
                          as: 'ShortTermGoals',
                          where: { MidtermGoalId: { $col: 'MidtermGoals.id' } }, // <--
                          include: [
                            {
                              model: db.Actions,
                              as: 'Actions',
                            }
                          ]
                        },
                        {
                          model: db.Activities,
                          as: 'Activities',
                        }
                      ]
                    }
                  ]
                }
              ]
            }
          ]
        },
      ],
    });

任何帮助将不胜感激!

【问题讨论】:

    标签: node.js postgresql sequelize.js


    【解决方案1】:

    这只是一个问题,但我认为你的 where 子句应该与“MidtermGoals”处于同一水平。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-06-10
      • 2018-01-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-05-11
      相关资源
      最近更新 更多