Prisma ORM 查询关系用户
Posted
技术标签:
【中文标题】Prisma ORM 查询关系用户【英文标题】:Prisma ORM query relation User 【发布时间】:2020-04-14 06:35:22 【问题描述】:我正在尝试在 Prisma ORM 中查询 1:1 关系 但是查询时总是返回 null
这是我的数据模型:
enum Role
ADMIN
MEMBER
CONSTRIBUTOR
type User
id: ID! @id
name: String! @unique
email: String! @unique
password: String!
posts: [Post!]!
role: Role @default(value: MEMBER)
type Post
id: ID! @id
title: String
excerpt: String
content: Json
author: User! @relation(link: INLINE)
我正在尝试查询包含用户的帖子:
但是当我这样做时在我的解析器中:
getPost: async (parent, args, ctx, info) =>
if (args.id)
console.log('GET POST by ID');
const id = args.id;
return await ctx.prisma.post( id ).author();
,
它总是返回 Null。有人知道如何解决吗?
【问题讨论】:
您返回的是作者对象,而不是帖子对象。 @DanielRearden 但我想与该帖子所附的作者一起发布:) 我该怎么做 你读过the docs吗? @DanielRearden 谢谢你会检查片段 api :) @DanielRearden 我认为查询关系是这样的:prisma.io/tutorials/a-guide-to-common-resolver-patterns-ct08/… 【参考方案1】:通过对作者使用单独查询来修复它:
const author = await ctx.prisma.post( id: id ).author();
const post = await ctx.prisma.post( id );
return
...post,
author
;
【讨论】:
以上是关于Prisma ORM 查询关系用户的主要内容,如果未能解决你的问题,请参考以下文章