Clés naturelles et recherches
Un enregistrement peut être adressé par une clé lisible comme about-us aussi bien que par son id. Les recherches ajoutent d'autres clés uniques à un modèle, de sorte qu'un handle ou un SKU retrouve l'enregistrement en une seule requête typée.
Clés naturelles
Une clé naturelle est une adresse lisible et facultative pour un enregistrement, renvoyée sous la forme _naturalKey. C'est un segment unique sûr pour une URL, composé de lettres, de chiffres, de traits d'union, de tirets bas, de points et de tildes. Vous pouvez lire un enregistrement par sa clé en GraphQL, dans le SDK et dans la CLI, et une lecture qui ne correspond à rien renvoie null. La clé est toujours disponible pour filtrer et trier.
Collisions et renommages
Définissez la clé à la création de l'enregistrement. Si un autre enregistrement du modèle la détient déjà, la création réussit quand même et Fóir ajoute un suffixe (about-1, about-2), lisez donc la clé dans la réponse. Le renommage est une mutation distincte. Il est refusé quand un autre enregistrement détient la nouvelle clé, et l'id de l'enregistrement ne change jamais.
Recherches
Une recherche est une clé nommée supplémentaire sur un modèle, déclarée dans votre fichier de config avec keyBy. Chacune génère une requête typée qui renvoie un enregistrement ou null : une recherche sur le SKU d'un produit vous donne productBySku. Une recherche peut combiner jusqu'à quatre champs, et un modèle peut avoir jusqu'à quatre recherches. Les champs doivent être des champs de premier niveau de type texte, entier, décimal, booléen ou enum.
Une requête de recherche correspond à la valeur de la variante servie à l'appelant, et accepte locale comme argument.
Unicité et remplissage rétroactif
Les recherches sont uniques et indexées. Sauvegarder un enregistrement dont la valeur de recherche entre en collision avec celle d'un autre est refusé, et l'erreur nomme le modèle, la recherche et ses champs. La console signale le conflit en ligne.
Ajouter une recherche à un modèle qui a déjà des enregistrements la remplit rétroactivement au push. Si des enregistrements existants contiennent des valeurs en double, le push s'arrête et la recherche n'est pas ajoutée.
Lire le détail
Le guide des recherches couvre la déclaration d'une recherche, la requête qu'elle génère, les clés composites et les erreurs de conflit.