Skip to content

Instantly share code, notes, and snippets.

@dabit3
Created June 28, 2020 21:09
Show Gist options
  • Save dabit3/608ce97f5d85934ca7dc875ad4d4857b to your computer and use it in GitHub Desktop.
Save dabit3/608ce97f5d85934ca7dc875ad4d4857b to your computer and use it in GitHub Desktop.
Attendee Event Connection
type User @model
@key(name: "byUserIdIndex", fields: ["userId"], queryField: "userById")
@auth(
rules: [
{ allow: owner, ownerField: "userId" }
]) {
id: ID!
userId: ID!
type: String!
events: [EventLink] @connection(keyName: "EventUserIndex", fields: ["userId"])
}
type Event @model
@key(name: "byEventIdIndex", fields: ["eventId"])
{
id: ID!
eventId: ID!
name: String!
attendees: [EventLink] @connection(keyName: "EventIdIndex", fields: ["id"])
}
type EventLink @model
@auth(rules: [
{ allow: owner, ownerField: "eventLinkUserId"}
])
@key(name: "EventUserIndex", fields: ["eventLinkUserId"])
@key(name: "EventIdIndex", fields: ["eventLinkEventId"]) {
id: ID!
eventLinkEventId: ID!
eventLinkUserId: ID!
event: [Event] @connection(keyName: "byEventIdIndex", fields: ["eventLinkEventId"])
attendees: [User] @connection(keyName: "byUserIdIndex", fields: ["eventLinkUserId"])
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment