В моей схеме есть два типа:
type Resident = { type Visitor = {
id id
name name
} }
В моей базе данных:
Таблицы резидентов и посетителей:
+--------+-------+ +--------+---------+
| res_id | name | | vis_id | name |
+--------+-------+ +--------+---------+
| 1 | Alice | | 1 | Charlie |
| 2 | Bob | +--------+---------+
+--------+-------+
А затем таблица, которая показывает какой посетитель принадлежит какому резиденту:
+--------+--------+--------------+
| res_id | vis_id | relationship |
+--------+--------+--------------+
| 1 | 1 | fam/fri |
| 2 | 1 | contractor |
+--------+--------+--------------+
Каждый посетитель может быть резидентом «fam / fri» или «подрядчиком». Так что Чарльз ie является посетителем Алисы как ее семья или друг. Однако Чарль ie также является посетителем Боба, а не подрядчиком.
Вопрос : Как структурировать мою схему так, чтобы при запросе Алисы Чарль ie возвращается как fam / fri, и когда я запрашиваю Боба, Charl ie возвращается как подрядчик? Я представляю себе это:
{
Resident(id: 1) { "Resident" {
name "Alice"
Visitor { "Visitor" {
id ===> "1"
name "Charlie"
relationship "fam/fri"
} }
} }
}
, а также:
{
Resident(id: 2) { "Resident" {
name "Bob"
Visitor { "Visitor" {
id ===> "1"
name "Charlie"
relationship "contractor"
} }
} }
}