Аргументы GraphQL для подполей - PullRequest
1 голос
/ 02 марта 2020

Возможно ли в GraphQL фильтровать результаты по аргументам подполей? Например:

{
 allNews(id: 999) {
    id
    startDate
    endDate
    newsText(title: "hello", message: "testMessage") {
        length
        disitrubutionDate
    }
 }
}

Я построил следующую схему:

type news {
  id: Int
  startDate: String
  endDate: String
  newsText: [newsText]
}

type newsText {
  message: String
  title: String
  length: Int
  distributionDate: String
}
type Query {
  allNews(id: Int, startDate: String, endDate: String): [news]
  allNewsTexts(message: String, title: String): [newsText]
}

Если я изменю type news на:

type news {
  id: Int
  startDate: String
  endDate: String
  allNewsTexts(message: String, title: String): [newsText]
}

сборщик данных, связанный с запрос allNewsTexts не вызывается, поэтому выходные данные будут:

"allNews": [
        {
            "id": 999,
            "startDate": "2020-02-27",
            "endDate": "2020-02-28",
            "allNewsTexts": null
        }
    ]

Мой java сборщик данных просто вернет repository.findAll(), отфильтрованный по id, startDate, endDate

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...