Relationen
Eine Relation ist ein Referenzfeld und lässt einen Datensatz auf einen anderen verweisen. Eine Abfrage liest in derselben Anfrage darüber hinweg, und das Feld legt fest, welche Art von Beziehung es ist, was bestimmt, ob Zugriff und Löschungen ihr folgen.
Über eine Referenz hinweg lesen
In GraphQL wird eine Referenz zum eigenen Typ des Zieldatensatzes aufgelöst, sodass Sie die zugehörigen Felder direkt auswählen. Ein Feld kann auf die Modelle beschränkt werden, auf die es verweisen darf. Lässt es zwei oder mehr zu, liefert es eine Union, die Sie mit Inline-Fragmenten lesen. Im Data-Client des SDK sind Relationen optional und werden mit include, das bis zu drei Ebenen tief verschachtelt werden kann, angefordert.
Innerhalb einer Anfrage werden Referenzen auf Datensätze desselben Modells gebündelt in Batches geladen. Standardmäßig erlaubt eine Abfrage eine Verschachtelungstiefe von 24 Ebenen.
Filtern und Schreiben
Eine Listenabfrage kann über eine Referenz hinweg mit dem eigenen Filter des referenzierten Modells filtern, zum Beispiel Beiträge des Autors mit einem bestimmten natürlichen Schlüssel. Ein Schreibzugriff verbindet eine Referenz über den natürlichen Schlüssel mit einem Datensatz oder trennt sie, um sie zu leeren.
Beziehungsarten
Eine einfache Referenz ist strukturell und gewährt keinen Zugriff auf den Datensatz, auf den sie verweist. Eine Leseassoziation ändert das für Lesezugriffe: Wer den referenzierten Datensatz lesen kann, kann auch den lesen, der auf ihn verweist, über einen Sprung. Eine Komposition macht das Kind zum Eigentum seines Elternteils, sodass Zugriff und Löschungen vom Elternteil auf das Kind übergehen, und sie ist immer einwertig. Die vierte Art macht ein Modell zu einem Baum, beschrieben unter Hierarchien.
Rückwärtsnavigation
Das Zielmodell erhält ein Feld, das die auf es verweisenden Datensätze auflistet, wenn Sie auf der Referenz ein inverse benennen. Bei einer Komposition ist dieses Feld eine einfache Liste. Bei einer Assoziation ist es eine paginierte Connection mit denselben Argumenten für Filter, Sortierung und Paginierung wie die Listenabfrage des Modells.
Details nachlesen
Die Referenz der Feldtypen dokumentiert das Referenzfeld und seine Optionen, und die Referenz der Modellkonfiguration behandelt die Beziehungsarten.