Я пытаюсь создать схему GraphQL таким образом, чтобы пользователь мог найти пользователя по его электронной почте или имени пользователя. Представьте себе, что для этих целей у одного пользователя может быть электронное письмо, которое является именем другого пользователя.
Мои typeDefs выглядят следующим образом:
const typeDefs = gql`
type Query {
user: User(username: String!)
user: User(email: String!)
}
`;
Это действительная схема? Если нет, то как мне изменить свое решение, чтобы оно было действительным и решило мою проблему?
Редактировать: Итак, я попытался выполнить вышеизложенное, и у меня появляется ошибка: «Ошибка: поле« Query.user »можно определить толькоодин раз.'Как я и думал.
Есть ли способ убедиться, что ровно один из username
и email
является нулевым в следующем: user: User(username: String, email: String)
?