Привет. Я читал учебник по GraphQL / Prisma (https://www.howtographql.com/graphql-js/6-authentication/)), и мне интересно, почему можно переопределить типы в схеме приложения, когда они уже являются частью схемы базы данных Prisma и могут быть импортировано оттуда.
Ответ, который дает учебное пособие: «Скрыть потенциально конфиденциальную информацию от клиентских приложений». Что это значит точно? Почему мы копируем определения в «schema.graphql» и «datamodel.prisma»? Поскольку определения немного отличаются (т. Е. «Модель данных» содержит теги типа @unique
)? И как мы скрываем вещи от клиентских приложений? Я остаюсь в недоумении ....
В частности, в "schema.graphql" у меня есть
type User {
id: ID!
name: String!
email: String!
links: [Link!]!
}
и в 'datamodel.prisma' у меня есть
type User {
id: ID! @unique
name: String!
email: String! @unique
password: String!
links: [ Link!] !
}