Graphql 在放大图ql中添加多对多连接
我有一个耗时的问题,不知道我可以测试更多。 这是工作,但我需要在招聘人员的职位阵列。但是,我有一个多对多的连接,没有任何工作了。有什么好办法解决这个问题吗? 这是我的密码:Graphql 在放大图ql中添加多对多连接,graphql,many-to-many,aws-amplify,Graphql,Many To Many,Aws Amplify,我有一个耗时的问题,不知道我可以测试更多。 这是工作,但我需要在招聘人员的职位阵列。但是,我有一个多对多的连接,没有任何工作了。有什么好办法解决这个问题吗? 这是我的密码: type Position @model @auth(rules: []) { id: ID! title: String! candidates: [Candidate]! @connection(name: "PositionCandidates") interestedRecruit
type Position @model @auth(rules: []) {
id: ID!
title: String!
candidates: [Candidate]! @connection(name: "PositionCandidates")
interestedRecruiters: [Recruiter]! @connection(name: "PositionRecruiter")
}
type Candidate @model @auth(rules: []) {
id: ID!
firstname: String!
lastname: String!
email: AWSEmail!
birthday: AWSDate!
position: Position! @connection(name: "PositionCandidates")
}
type Recruiter @model @auth(rules: []) {
id: ID!
firstname: String!
lastname: String!
email: AWSEmail!
birthday: AWSDate!
positions: Position! @connection(name: "PositionRecruiter")
}
谢谢 要使用amplify/app sync处理多对多连接,您必须创建一个“连接”表(类型)。您可以将联接表视为存储连接的表 从你的例子中,我没有完全理解你想要的结果是什么,因此我将尝试用另一个例子来解释: 假设您有一个系统,其中多个用户可以是一个文档的创建者,一个用户也可以是多个文档的创建者之一。要实现这一点,您必须创建三个dynamoDb表(模式中有三种类型) 然后有一个包含所有用户的表,一个包含所有文档的表,以及一个包含用户和文档之间所有连接的表 假设您有一个用户正在创建一个新文档。然后,首先创建文档,然后在创建文档并从appsync接收到具有文档新id的文档后,必须在UserDocument表中创建一个新对象,其中包含用户id和文档id。然后,还可以通过向UserDocument表添加更多项,在文档上添加更多用户
我希望这将帮助您找到正确的前进方向。您是否有一个解决方案可以将放大身份验证保护添加到上述模式中?我已经在这方面工作了一段时间,但似乎没有弄明白,相反,我正在使用自定义角色的对象,但它很脏,我不太喜欢它。
type User @model {
id: ID!
name: String
documents: [UserDocument] @connection(name: "UserDocumentConnection")
}
type Document @model {
id: ID!
title: String
content: String
users: [UserDocument] @connection(name: "DocumentUserConnection")
}
type UserDocument @model {
id: ID!
user: User @connection(name: "UserDocumentConnection")
document: Document @connection(name: "DocumentUserConnection")
}