【问题标题】:How can i get relation with nestjs-typeorm-paginate我如何获得与 nestjs-typeorm-paginate 的关系
【发布时间】:2020-03-21 22:54:05
【问题描述】:

我正在尝试将 nestJs 与 angular 和 data-table 一起使用。

我有return await this.repo.find({relations: ['device_']}), 但是如果我想使用分页,我必须使用

return await paginate<Display>(this.repo, options);

我怎样才能在这里获得关系? 选项不包含relations 参数。

【问题讨论】:

    标签: angular datatable nestjs


    【解决方案1】:

    目前没有办法使用当前设置来做到这一点。您可以在您的实体中添加一个渴望的关系或使用这样的查询构建器

    选项 1

    @Entity()
    export class ExampleEntity {
    
      @OneToMany(t => SomethingEntity, something => something.example, {eager: true})
      something: SomethingEntity[];
    
    }
    
    

    选项 2

    查询生成器

    return paginate<Display>(this.repo.createQueryBuilder().leftJoinAndSelect('something', 's', 's.id = display.somethingId'), {limit, page});
    

    说实话。我没有想到使用与此的关系。也许不是第三个参数是 findConditions 它应该允许您输入关系。

    但是,我在使用分页方法时遇到了左连接多对多关系的问题,因此我不得不为每个项目补充我的关系。我可能会重新考虑分页方法。我确实很快构建了它以停止重复实施。当我找到一些时间(看起来不太可能)时,我会重新实现这个方法。

    【讨论】:

      【解决方案2】:

      你可以这样做:

      return await paginate<Display>(this.repo, options, {relations:['device_']});
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-03-05
        • 2021-04-23
        • 2022-01-02
        • 1970-01-01
        • 2020-01-15
        • 2020-09-01
        • 2021-08-04
        • 2021-03-06
        相关资源
        最近更新 更多