我尝试包含在以下GraphQL模式中定义的嵌套类型:
type User {
id: String!
posts: [Post]
}
type Post {
id: String!
}
type Query {
getUser(id: String!): User
getPost(id: String!): Post
}
如您所见,一个用户有多个帖子。我正在使用AppSync和相邻列表Dynamodb表(其中包含用户和相关帖子的行)作为数据源。在AppSync中,我必须使用请求映射模板,但阅读文档后我不明白嵌套类型是如何解析的?
我想象一下,在查询getUser
时应该使用User_id调用Post解析器。如果是这样,我该如何访问帖子解析器中的父ID?这就是${context.source}
的使用场景吗?
由于getPost
查询解析器与Post解析器相同,并且由getUser Post child调用,因此我是否需要在解析器的请求模板中集成一些逻辑来处理两种情况?
一个示例会非常有帮助!