Лучшие практики для типов почтовых адресов - PullRequest
0 голосов
/ 14 июля 2020

Я новичок в GraphQL и пишу схему, которая будет включать компании и пользователей. У каждой из этих сущностей будет связанный с ними почтовый адрес. Я также использую AWS Amplify для генерации преобразователей и БД (по крайней мере, для запуска проекта).

  • Я не собираюсь получать адрес отдельно от его пользователя / компании
  • Хотите сделать схему настолько модульной, насколько это возможно без излишнего повторения информации

Вот сокращенная версия того, что я начал

type Address {
  id: ID!
  streetAddress1: String!
  streetAddress2: String
  city: String!
  state: String!
  zipCode: String!
  country: String!
  coordinates: String
}

type Company 
{
  id: ID!
  name: String!
  address: Address!
  ...
}

Мой вопрос в том, лучше всего иметь адрес как отдельный тип в моей схеме или объединять каждый из типов компании / пользователей с их собственным адресом? Это меня беспокоит

  • Разделение адреса и сущности увеличивает сложность бизнес-логики c и / или мутаций.
  • По сути, превращение операций CRUD в транзакционный характер, чтобы и пользователь, и адрес изменяются / запрашиваются.

1 Ответ

0 голосов
/ 20 июля 2020

Подумал, что я бы использовал тип Address без аннотации @model и без @connection из типов, которые в нем нуждаются.

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