Relations

Une relation est un champ de référence : un enregistrement qui pointe vers un autre. Une requête lit à travers elle dans la même requête, et le champ déclare le type de relation, ce qui détermine si l'accès et les suppressions la suivent.

Lire à travers une référence

En GraphQL, une référence se résout vers le type propre de l'enregistrement cible, ce qui permet de sélectionner les champs liés en ligne. Un champ peut être limité aux modèles vers lesquels il peut pointer. S'il en admet deux ou plus, il renvoie une union que vous lisez avec des fragments en ligne. Dans le client de données du SDK, les relations sont à activer explicitement : demandez-les avec include, qui s'imbrique sur trois niveaux.

Au sein d'une requête, les références vers des enregistrements du même modèle sont récupérées ensemble par lots. Par défaut, une requête peut s'imbriquer sur 24 niveaux de profondeur.

Filtrer et écrire

Une requête de liste peut filtrer à travers une référence avec le propre filtre du modèle référencé, par exemple les articles d'un auteur donné par sa clé naturelle. Une écriture relie une référence à un enregistrement par la clé naturelle de celui-ci, ou la délie pour l'effacer.

Types de relation

Une référence simple est structurelle et n'accorde aucun accès à l'enregistrement vers lequel elle pointe. Une association en lecture change cela pour les lectures : celui qui peut lire l'enregistrement référencé peut lire celui qui le référence, sur un seul saut. Une composition rend l'enfant propriétaire de son parent, de sorte que l'accès et les suppressions se propagent du parent à l'enfant, et elle est toujours à valeur unique. Le quatrième type transforme un modèle en arbre, décrit sous hiérarchies.

Parcours inverse

Nommez un inverse sur la référence et le modèle cible gagne un champ qui liste les enregistrements qui pointent vers lui. Pour une composition, ce champ est une liste simple. Pour une association, c'est une connexion paginée qui accepte les mêmes arguments de filtre, de tri et de pagination que la requête de liste du modèle.

Lire le détail

La référence des types de champ documente le champ de référence et ses options, et la référence de configuration des modèles couvre les types de relation.