Prisma В таблице ссылок не должно быть никаких дополнительных скалярных полей. - PullRequest
0 голосов
/ 29 января 2020

У меня есть отношение многие ко многим между двумя таблицами:

type Post {
  id: ID! @id
  createdAt: DateTime! @createdAt
  updatedAt: DateTime! @updatedAt
  name: String! 
  users: [Profile!] @relation(link: TABLE, name: "ParticipatedUsers")
}

type Profile {
  id: ID! @id
  createdAt: DateTime! @createdAt
  updatedAt: DateTime! @updatedAt
  name: String! 
  participatingInPosts: [Post!] @relation(name: "ParticipatedUsers")
}


type ParticipatedUsers @relationTable {
  post: Post
  profile: Profile 
  requiredPostsCount: Int
  publishedPostsCount: Int
}

и при попытке запустить команду prisma deploy, я получил следующие ошибки:

Ошибки:

ParticipatedUsers table В таблице ссылок не должно быть никаких дополнительных скалярных полей. Table В таблице ссылок не должно быть никаких дополнительных скалярных полей. Table В таблице ссылок не должно быть никаких дополнительных скалярных полей.

как я могу создать таблицу отношений и добавить новые поля в эту таблицу?

Спасибо,

1 Ответ

1 голос
/ 04 февраля 2020

В Prisma вы можете сделать это, добавив тип со скалярными полями и два отношения к типам, которые вы хотите подключить, например:

type Post {
  id: ID! @id
  createdAt: DateTime! @createdAt
  updatedAt: DateTime! @updatedAt
  name: String! 
  users: [ParticipatedUser!] @relation(link: TABLE, name: "ParticipatedUserPosts")
}

type Profile {
  id: ID! @id
  createdAt: DateTime! @createdAt
  updatedAt: DateTime! @updatedAt
  name: String! 
  participatingInPosts: [ParticipatedUser!] @relation(link: TABLE, name: "ParticipatedUserProfiles")
}


type ParticipatedUser {
  post: Post! @relation(name: "ParticipatedUserPosts")
  profile: Profile! @relation(name: "ParticipatedUserProfiles")
  requiredPostsCount: Int
  publishedPostsCount: Int
}
...