Разрешение пространства имен для схемы graphql

Если я хочу создать 2 разных типа пользователей в зависимости от контекста, как я могу добиться этого в graphql, не называя их по-разному? Поддерживает ли graphql пространства имен или эту концепцию в любой форме, чтобы мы могли добиться такого же поведения? Пожалуйста, порекомендуйте.


person dilip280    schedule 16.01.2020    source источник
comment
Почему этот вопрос отмечен как graphql-java, так и express-graphql? В любом случае это похоже на общий вопрос GraphQL. Если вы хотите ограничить его конкретной реализацией, вы можете, но, предположительно, вы не используете сервер Java и Node.js.   -  person Daniel Rearden    schedule 17.01.2020


Ответы (2)


Из спецификации:

Все типы в схеме GraphQL должны иметь уникальные имена. Два предоставленных типа не могут иметь одно и то же имя. Ни один из предоставленных типов не может иметь имя, которое конфликтует с любыми встроенными типами (включая скалярные типы и типы самоанализа).

В GraphQL нет понятия «пространства имен». В схеме есть операции, типы, поля, аргументы и директивы - вот и все.

Нет ничего плохого в том, чтобы иметь одну модель предметной области (т.е. User), которая сопоставляется с несколькими типами в вашей схеме (то есть Viewer и Friend).

person Daniel Rearden    schedule 16.01.2020

В настоящее время статус заявки на предложение - open, отслеживайте его здесь

person oklas    schedule 28.11.2020