API платформы GraphQl фильтрует подресурсы по родительскому элементу ⇐ Php
-
Anonymous
API платформы GraphQl фильтрует подресурсы по родительскому элементу
Я создаю сервис, который поддерживает RestAPI и Graphql с платформой API.
Конфигурация Rest API для подресурса работает должным образом. Например, в RestAPI по следующему запросу
/api/intents/23/intent_ Economic_activities возвращает IntentEconomicActivities намерения 23.
Но я не знаю, как настроить ApiResource, чтобы он также требовал IntentId и использовал его для запросов GraphQL.
Вот мои конфигурации ApiResource для subResource:
#[ApiResource( uriTemplate: '/intents/{intentId}/intent_ Economic_activities/{id}', операции: [ новый Получить(), ], uriVariables: [ 'intentId' => новая ссылка (toProperty: 'intent', fromClass: Intent::class), 'id' => новая ссылка (fromClass: IntentEconomicActivity::class), ], RoutePrefix: 'API', графQlОперации: [ новый запрос(), ], )] #[ApiResource( uriTemplate: '/intents/{intentId}/intent_ Economic_activities', операции: [ новый ПолучитьКоллекцию(), ], uriVariables: [ 'intentId' => новая ссылка (toProperty: 'intent', fromClass: Intent::class), ], RoutePrefix: 'API', графQlОперации: [ новая коллекция запросов(), ], )] #[ОРМ\Entity] класс IntentEconomicActivity Проблема возникает только при получении коллекции подресурсов через GraphQL. Он работает правильно при получении одного подресурса:
{ IntentEconomicActivity(id: "/api/intents/20/intent_ Economic_activities/6") { идентификатор } } Я использую Doctrine ORM.
ApiPlatform v3.2
Я создаю сервис, который поддерживает RestAPI и Graphql с платформой API.
Конфигурация Rest API для подресурса работает должным образом. Например, в RestAPI по следующему запросу
/api/intents/23/intent_ Economic_activities возвращает IntentEconomicActivities намерения 23.
Но я не знаю, как настроить ApiResource, чтобы он также требовал IntentId и использовал его для запросов GraphQL.
Вот мои конфигурации ApiResource для subResource:
#[ApiResource( uriTemplate: '/intents/{intentId}/intent_ Economic_activities/{id}', операции: [ новый Получить(), ], uriVariables: [ 'intentId' => новая ссылка (toProperty: 'intent', fromClass: Intent::class), 'id' => новая ссылка (fromClass: IntentEconomicActivity::class), ], RoutePrefix: 'API', графQlОперации: [ новый запрос(), ], )] #[ApiResource( uriTemplate: '/intents/{intentId}/intent_ Economic_activities', операции: [ новый ПолучитьКоллекцию(), ], uriVariables: [ 'intentId' => новая ссылка (toProperty: 'intent', fromClass: Intent::class), ], RoutePrefix: 'API', графQlОперации: [ новая коллекция запросов(), ], )] #[ОРМ\Entity] класс IntentEconomicActivity Проблема возникает только при получении коллекции подресурсов через GraphQL. Он работает правильно при получении одного подресурса:
{ IntentEconomicActivity(id: "/api/intents/20/intent_ Economic_activities/6") { идентификатор } } Я использую Doctrine ORM.
ApiPlatform v3.2
Мобильная версия