Как написать фильтрующий запрос с graphql?

В настоящее время мы используем библиотеку graphql/graphql-ruby. Я написал несколько запросов и мутаций в соответствии с нашим требованием.

У меня есть случай использования ниже, где я не уверен, как это реализовать,

  1. У меня уже есть запрос / конечная точка с именем allManagers которые возвращают все детали менеджера.

  2. Сегодня у меня есть требование реализовать другой запрос, чтобы вернуть всех менеджеров на основе region фильтр.

У меня есть 2 варианта, чтобы справиться с этим сценарием.

  1. Создайте необязательный аргумент для региона, и внутри запроса мне нужно проверить, передан ли регион, а затем отфильтровать по региону.

  2. Используйте что-то вроде https://www.howtographql.com/graphql-ruby/7-filtering/.

Какой подход является правильным?

1 ответ

Похоже, вы можете сделать это с любым подходом. #2 выглядит немного сложнее, но, возможно, более расширяемо, если в итоге вы добавите тонну различных типов фильтров?

вас попросят выбрать несколько регионов? или негативные регионы (любой регион, кроме Северной Америки?) - это те вопросы, о которых вы хотите подумать при выборе подхода.

Звучит как хороший разговор с коллегой:)

Вероятно, я бы предпочел начать с простого подхода, а затем заменить его на более сложный, когда простое решение больше не решает всех моих задач.

Другие вопросы по тегам