graphql:向连接表添加字段

时间:2018-04-06 17:13:14

标签: graphql graphql-js apollo-server graphcool

我有两组带有以下架构的记录

type Player {
    id: ID! @unique
    name: String!
    links: [NPC!]! @relation(name: 'linkedNpcs')
}

type NPC {
        id: ID! @unique
        name: String!
        playerLinks: [Player!]! @relation(name: 'linkedNpcs')
}

我想在名为linkedNpcs的{​​{1}}中添加其他字段。

我如何在relationType文件中写这个?每个types.graphql链接都应该包含一个唯一的记录,因为它是一个多对多的关系,所以这个metaData应该存在于连接表中。

1 个答案:

答案 0 :(得分:0)

通过graphcool论坛回答:https://www.graph.cool/forum/t/adding-a-field-to-a-relation-table-in-prisma/3086/2

感谢@matic!

enum RelationType {
  A
  B
  C
}

type Player {
  id: ID! @unique
  name: String!
  links: [PlayerNPC!]! @relation(name: 'linkedPlayer')
}

type PlayerNPC {
  id: ID! @unique

  relationType: RelationType!

  player: Player! @relation(name: 'linkedPlayer')
  npc: NPC! @relation(name: 'linkedNPC')
}

type NPC {
  id: ID! @unique
  name: String!
  links: [PlayerNPC!]! @relation(name: ‘linkedNPC’)
}