Prisma Connection WhereInput 用于枚举值数组?

Posted

技术标签:

【中文标题】Prisma Connection WhereInput 用于枚举值数组?【英文标题】:Prisma Connection WhereInput for Array of enum values? 【发布时间】:2019-08-19 21:44:58 【问题描述】:

这样做????

query 
  postsConnection(where: 
    status: PUBLISHED
  ) 
    aggregate 
      count
    
    edges 
      cursor
      node 
        id
        slug
      
    
  

给我postsConnection 的已发布帖子。

Post 模型在字段categories 中有一个Category 枚举数组。这是datamodel中的帖子????

enum Category 
  TECH
  FIN
  DIGIMARK
  CODING
  TUTORIAL
  HOWTO
  WRITING
  INSPIRE
  SCIENCE
  POLITICS
  LIFESTYLE

type Post 
  id: ID!
  title: String!
  editorSerializedOutput: Json!
  editorCurrentContent: Json!
  editorhtml: String!
  updatedAt: DateTime!
  createdAt: DateTime!
  author: User
  authorId: String!
  categories: [Category!]!
  thumbnail: Json!
  status: PostStatus!
  slug: String!

我的问题是,我需要编写什么 Prisma 查询才能获得特定类别中的 PostConnection 帖子?

【问题讨论】:

您已经使用 status: PUBLISHED 过滤了您的连接中的帖子,您可以使用 categories 执行相同操作 这就是问题所在。我不能用类别来做到这一点。它是一个数组 哦抱歉,没看懂问题,我补充了一个更好的答案 【参考方案1】:

Prisma 还不允许使用 Enum 进行过滤(请参阅 issue on github)

但是,您可以创建 to-many 与您可以创建的新类型 Category 的关系

【讨论】:

以上是关于Prisma Connection WhereInput 用于枚举值数组?的主要内容,如果未能解决你的问题,请参考以下文章

Laravel whereIn 或 whereIn

Laravel:带有变量的whereIn

Laravel Query Builder 在“whereIn”语句的子查询中使用父查询?

使用 Laravel 查询构建器方法 whereIn() 和子查询

tp5 wherein 怎么查

Laravel 过滤多个 WhereIn 数组