Node.js Sequelize::Include[]构造内的限制和顺序

Node.js Sequelize::Include[]构造内的限制和顺序,node.js,sequelize.js,Node.js,Sequelize.js,我有以下模型层次结构: User.hasMany(Child); Child.hasMany(Profile); 加载用户对象后,我需要根据以下逻辑加载其子对象及其关联的配置文件: 加载用户的所有子项,按名称排序 对于每个子项,加载前三个配置文件按id反向排序 是否有方法限制和排序已加载的配置文件?我可以限制和排序子项,但不能限制和排序配置文件 user.getChildren({ limit: 10, order: [['name', 'ASC']], include: [{

我有以下模型层次结构:

User.hasMany(Child);
Child.hasMany(Profile);
加载
用户
对象后,我需要根据以下逻辑加载其
子对象
及其关联的
配置文件

  • 加载
    用户
    的所有
    子项
    ,按
    名称
    排序
  • 对于每个
    子项
    ,加载前三个
    配置文件
    id
    反向排序
  • 是否有方法限制和排序已加载的
    配置文件
    ?我可以限制和排序
    子项
    ,但不能限制和排序
    配置文件

    user.getChildren({
      limit: 10,
      order: [['name', 'ASC']],
      include: [{
        model: Profile,
        limit: 3,                <-- HAS NO EFFECT!!!
        order: [['id', 'DESC']]  <-- HAS NO EFFECT!!!
      }]
    });
    
    在我看来,这既不好,又需要额外的代码,以确保在加载所有
    子项之前,我不会访问
    子项


    有没有办法在
    include[]
    构造中指定
    限制
    顺序
    选项?

    不确定
    限制
    ,但我尝试了一个简单的
    顺序
    ,效果很好:

    user.getPets({
        order: 'type ASC'
    })
    

    从广义上讲,我认为限制也有效?

    不,不幸的是,它不起作用,或者我无法找到正确的方法。报告问题并询问sequelize团队
    user.getPets({
        order: 'type ASC'
    })