【发布时间】:2019-02-17 10:50:09
【问题描述】:
我正在编写一个 NestJS 应用程序。一些端点支持排序,例如http://127.0.0.1:3000/api/v1/members?sort=-id&take=100 表示按id 降序排列。
此参数作为@Query 参数到达并传递给我的服务。该服务将其转换为 TypeORM 使用的对象:
{
id: 'DESC'
}
我不想每次需要排序的时候都手动调用这个转换方法。
我尝试了intercepter,但这个不能轻易将请求参数更改为所需的对象。
pipe 有效,但我仍然需要为每个端点定义添加 @Query(new SortPipe())。
另一个选项是在存储库本身中。 NestJS 文档写得非常好,但缺少关于放置内容的指导。
是否有人在将 Query 参数用于 NestJS 之前遇到了类似的问题,并且可以解释在 NestJS 中哪种方法最好?
这个问题可能看起来像是一个基于意见的问题,但是我正在寻找应该考虑到 NestJS 哲学的方法。
【问题讨论】:
标签: nestjs