Outils du site

La laïcité est l'acceptation de toutes les opinions et de tous les comportements qui savent respecter l'autre. L'unicité de Dieu propose par le pharaon Akhenaton est en fait la base de la laïcité. Il n'est plus question de s'entre-déchirer au nom d'une multitude de divinités, mais de constater l'unicité de l'espèce humaine dans son devenir. [Albert Jacquard]

60-database:graphql

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
60-database:graphql [2020/01/10 01:05] – [Références] Roge60-database:graphql [2020/01/12 10:03] (Version actuelle) – Roge
Ligne 14: Ligne 14:
 [[https://graphql.org/learn/schema/|"GraphQL schema language"]] [[https://graphql.org/learn/schema/|"GraphQL schema language"]]
  
 +
 +Les types d'opération :
 +  * query
 +  * mutation
 +  * subscription
 +
 +===== Query =====
 +
 +Requête qui ramène le résultat d'une interrogation.
 +
 +<code javascript>
 +query HeroNameAndFriends($episode: Episode = JEDI) {
 +  hero(episode: $episode) {
 +    name
 +    friends {
 +      name
 +    }
 +  }
 +}
 +</code>
 +
 +===== Mutation =====
 +
 +Opération qui mets à jour la base de données.
 +
 +<code javascript>
 +mutation CreateReviewForEpisode($ep: Episode!, $review: ReviewInput!) {
 +  createReview(episode: $ep, review: $review) {
 +    stars
 +    commentary
 +  }
 +}
 +</code>
 +
 +===== subscription =====
 +
 +<code javascript>
 +
 +</code>
 +
 +===== Directives =====
 +
 +Une directive permet de mettre une condition sur un champ de la requête :
 +
 +  * @include(if: Boolean) Only include this field in the result if the argument is true.
 +  * @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 20: Ligne 75:
 [[https://blog.logrocket.com/5-reasons-you-shouldnt-be-using-graphql-61c7846e7ed3/| 5 reasons you shouldn’t be using GraphQ]] [[https://blog.logrocket.com/5-reasons-you-shouldnt-be-using-graphql-61c7846e7ed3/| 5 reasons you shouldn’t be using GraphQ]]
  
-[[ https://github.com/Novvum/36-graphql-concepts/blob/master/README.md | 36 Concepts Every GraphQL Developer Should Know]]+[[https://github.com/Novvum/36-graphql-concepts/blob/master/README.md| 36 Concepts Every GraphQL Developer Should Know]]
Dernière modification : 2020/01/10 01:05