Разделение схем GraphQL по моделям в приложении Laravel - PullRequest
0 голосов
/ 23 января 2020

Я довольно новичок в GraphQL. Я знаю, что вы можете определить схемы своих моделей в файле schema.graphql, но я действительно не нашел каких-либо рекомендаций по этому файлу. Вы обычно храните все свои модели / мутации и т.д. c. в этом одном файле? Или есть способ, которым вы можете создать файл схемы для каждой модели в вашем приложении?

ОБНОВЛЕНИЕ: я забыл упомянуть, что использую Lighthouse, и после более подробного изучения их документов я обнаружил, что вы можете разделять файлы схем по моделям.

Например:

  |-- schema.graphql
  |-- post/
    |-- post.graphql
    |-- category.graphql

Затем вы можете импортировать эти файлы в ваш основной файл shema.graphql, используя #import post.graphql

1 Ответ

0 голосов
/ 23 января 2020

Протестировал это, и оно работает, поэтому я решил опубликовать ответ здесь на случай, если кто-нибудь еще столкнется с этим.

Если вы используете Lighthouse для интеграции Laravel и GraphQL, вы можете отделить схемы своей модели, вложив структуру файла следующим образом:

|-- schema.graphql
  |-- post/
    |-- post.graphql
    |-- category.graphql

Отсюда вы можете импортировать любую из Существующие файлы схемы, которые вы используете, используя #import post.graphql.

Еще одна вещь, на которую следует обратить внимание, это то, что schema.graphql - это место, где сначала находятся все начальные /graphql запросы go, поэтому вам придется импортировать другие схемы в этом файле.

Ссылка для справки: https://lighthouse-php.com/master/digging-deeper/schema-organisation.html#schema -импорт

...