Graphql 查询以获取按关系中的项数排序的数据
假设我有一个典型的数据模型,在许多教程中使用:Graphql 查询以获取按关系中的项数排序的数据,graphql,prisma,prisma-graphql,Graphql,Prisma,Prisma Graphql,假设我有一个典型的数据模型,在许多教程中使用: type User { id: ID! @unique name: String! posts: [Post!]! } type Post { id: ID! @unique title: String! content: String! published: Boolean! @default(value: "false") author: User! } 有没有一个查询我可以建立一个列表,比如说,10个用户有
type User {
id: ID! @unique
name: String!
posts: [Post!]!
}
type Post {
id: ID! @unique
title: String!
content: String!
published: Boolean! @default(value: "false")
author: User!
}
有没有一个查询我可以建立一个列表,比如说,10个用户有更多的帖子??
基本上,我需要通过“计数”的帖子来查询排序……但我还没有找到一种方法来做到这一点
任何帮助都将不胜感激
欢呼声正如@shivam panday在一篇评论中所说的,目前Prisma没有实施这一措施(见问题:) 此评论特别解释了您的问题: 它将是伟大的,能够按“到许多”相关领域以及(由相关项目的计数) 例如,要获取链接投票率最高的前10名(假设投票是[Vote!]类型的相关字段),请执行以下操作: 目前,要获得该列表,您必须查询每个链接,然后在客户机上对其进行排序/切片,这可能会导致大量的抓取
有问题的评论:我在Prisma身上遇到了同样的问题,这是一个重大问题。检索所有用户及其所有帖子,并按其帖子数量排序不是一个实用的解决方案 我能想到的解决办法是跟踪帖子的数量(每次添加/删除帖子时),并将其存储在User中
type User {
id: ID! @unique
name: String!
postsCount: Int!
posts: [Post!]!
}
这样,Prisma将公开PostScont的排序选项
我不确定Prisma 2是否为这个问题提供了合适的解决方案。。。有人知道吗?你经历过吗?我没有。但这是我想要的吗?我想要的是让用户按帖子数量排序。因此,为每个用户计数(帖子)并按该数字排序。我认为他们在那个问题上谈论的不一样,是吗?谢谢你的回答!是的,那是真的。这就是我需要的。。。由于目前的Prisma实现不可能做到这一点,你们能想到什么解决办法吗?干杯:)使用Prisma api,我不确定是否有一种方法可以做到这一点,它不需要检索所有有投票权的用户,然后自己进行排序。我认为这不是一个好的解决方案,因为它会占用您后端的大量资源。但是,您可以使用对数据库的原始访问来查询用户并对其进行排序。您将检索它们的ID,然后执行一个简单的Prisma查询,以获取它们所需的信息。()
type User {
id: ID! @unique
name: String!
postsCount: Int!
posts: [Post!]!
}