Natürliche Schlüssel und Lookups
Ein Datensatz lässt sich über einen lesbaren Schlüssel wie about-us ansprechen, ebenso wie über seine ID. Lookups fügen einem Modell weitere eindeutige Schlüssel hinzu, sodass ein Handle oder eine SKU den Datensatz in einer typisierten Abfrage findet.
Natürliche Schlüssel
Ein natürlicher Schlüssel ist eine optionale, lesbare Adresse für einen Datensatz, zurückgegeben als _naturalKey. Er ist ein URL-sicheres Segment aus Buchstaben, Ziffern, Bindestrichen, Unterstrichen, Punkten und Tilden. Sie können einen Datensatz in GraphQL, im SDK und in der CLI über seinen Schlüssel lesen, und ein Lesezugriff ohne Treffer gibt null zurück. Der Schlüssel steht immer zum Filtern und Sortieren zur Verfügung.
Kollisionen und Umbenennungen
Setzen Sie den Schlüssel beim Anlegen des Datensatzes. Hält ihn bereits ein anderer Datensatz des Modells, gelingt das Anlegen trotzdem, und Fóir hängt ein Suffix an (about-1, about-2), lesen Sie den Schlüssel also aus der Antwort zurück. Das Umbenennen ist eine eigene Mutation. Sie wird abgelehnt, wenn ein anderer Datensatz den neuen Schlüssel hält, und die ID des Datensatzes ändert sich nie.
Lookups
Ein Lookup ist ein zusätzlicher benannter Schlüssel an einem Modell, deklariert in Ihrer Config-Datei mit keyBy. Jeder erzeugt eine typisierte Abfrage, die einen Datensatz oder null zurückgibt: Ein Lookup auf die SKU eines Produkts ergibt productBySku. Ein Lookup kann bis zu vier Felder kombinieren, und ein Modell kann bis zu vier Lookups haben. Die Felder müssen Felder der obersten Ebene vom Typ Text, Integer, Decimal, Boolean oder Enum sein.
Eine Lookup-Abfrage gleicht den Wert der Variante ab, die dem Aufrufer ausgespielt wird, und nimmt als Argument ein locale entgegen.
Eindeutigkeit und Backfill
Lookups sind eindeutig und indiziert. Das Speichern eines Datensatzes, dessen Lookup-Wert mit dem eines anderen kollidiert, wird abgelehnt, und der Fehler nennt das Modell, den Lookup und seine Felder. Die Konsole markiert den Konflikt direkt im Formular.
Das Hinzufügen eines Lookups zu einem Modell, das bereits Datensätze hat, füllt ihn beim Push nach. Enthalten vorhandene Datensätze doppelte Werte, stoppt der Push, und der Lookup wird nicht hinzugefügt.
Details nachlesen
Der Lookup-Leitfaden behandelt das Deklarieren eines Lookups, die Abfrage, die er erzeugt, zusammengesetzte Schlüssel und Konfliktfehler.