Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| 60-database:graphql [2020/01/10 01:05] – [Références] Roge | 60-database:graphql [2020/01/12 10:03] (Version actuelle) – Roge | ||
|---|---|---|---|
| Ligne 14: | Ligne 14: | ||
| [[https:// | [[https:// | ||
| + | |||
| + | Les types d' | ||
| + | * query | ||
| + | * mutation | ||
| + | * subscription | ||
| + | |||
| + | ===== Query ===== | ||
| + | |||
| + | Requête qui ramène le résultat d'une interrogation. | ||
| + | |||
| + | <code javascript> | ||
| + | query HeroNameAndFriends($episode: | ||
| + | hero(episode: | ||
| + | name | ||
| + | friends { | ||
| + | name | ||
| + | } | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | ===== Mutation ===== | ||
| + | |||
| + | Opération qui mets à jour la base de données. | ||
| + | |||
| + | <code javascript> | ||
| + | mutation CreateReviewForEpisode($ep: | ||
| + | createReview(episode: | ||
| + | stars | ||
| + | commentary | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | ===== subscription ===== | ||
| + | |||
| + | <code javascript> | ||
| + | |||
| + | </ | ||
| + | |||
| + | ===== Directives ===== | ||
| + | |||
| + | Une directive permet de mettre une condition sur un champ de la requête : | ||
| + | |||
| + | * @include(if: | ||
| + | * @skip(if: Boolean) Skip this field if the argument is true. | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | ===== proposition de regles ===== | ||
| + | |||
| + | Chaque opération doit être nommée, ne pas utiliser les raccourcis pour écrire des requêtes sans nom. --> faciliter le débuggage | ||
| + | |||
| + | Utiliser systématiquement des $variables dans les opérations (aucune valeur statique dans les requetes). --> Réutilisabilité | ||
| Ligne 19: | Ligne 74: | ||
| [[https:// | [[https:// | ||
| + | |||
| [[https:// | [[https:// | ||