https://www.linkedin.com/in/mehreentahir93/
INTEGRATING GRAPHQL �WITH � RUBY ON RAILS
WEBINAR ROADMAP
WHAT IS HYPE ABOUT
06 / 29
WHY & HOW IT CAME INTO EXISTENCE
07 / 29
ARCHITECTURE
08 / 29
UNDER FETCHING
SITUATIONS
OVER FETCHING
Need To Display Single Author With All Details
Need To List All Author Names
NOT ENOUGH DATA PER REQUEST�(Doesn’t fetch chapter details)
EXTRA DATA PER REQUEST�(Fetches un necessary book details)
09 / 29
ARCHITECTURE
10 / 29
QUERIES & MUTATIONS
QUERIES� mechanism for reading data
MUTATIONS� mechanism for creating/updating data
11 / 29
12 / 29
Today’s proof of concept will be on a basic example, in which author can have many books and each book can have multiple chapters.
13 / 29
CREATING PROJECT SKELETON
14 / 29
2.times do
author = Author.create(name: Faker::Name.name, email: Faker::Internet.email)
3.times do
book = author.books.create(name: Faker::Lorem.sentence(word_count:2), description: Faker::Lorem.paragraph(sentence_count:2))
2.times do
book.chapters.create(name: Faker::Lorem.sentence(word_count: 2), short_description: Faker::Lorem.paragraph(sentence_count: 2))
end
end
end�
SEEDING DATA FOR QUERYING
15 / 29
GRAPHQL INSTALLATION & OBJECT GENERATIONS
16 / 29
� if Rails.env.development?
mount GraphiQL::Rails::Engine, at: "/graphql", graphql_path: "graphql#execute"
end�
ADDING BETTER VISUALIZATION
17 / 29
GRAPHQL QUERIES
Queries are used to read data
Terminology: ��field
object
18 / 29
(1) QUERY LIST OF AUTHORS WITH BASIC INFORMATION
19 / 29
(2) QUERY LIST OF AUTHORS WITH BOOKS
20 / 29
(3) QUERY LIST OF AUTHORS WITH BOOKS AND ITS CHAPTERS
21 / 29
QUERY
FETCH LIST OF AUTHORS
22 / 29
QUERY FOR SINGLE AUTHOR
23 / 29
QUERY
FETCH SINGLE AUTHOR
24 / 29
GRAPHQL MUTATIONS
Mutations are used for Creating and updating data
Terminology:��arguments
fields
resolve ��
25 / 29
CREATE AUTHOR MUTATION
26 / 29
CREATE AUTHOR MUTATION
27 / 29
�
UPDATE AUTHOR MUTATION
28 / 29
UPDATE AUTHOR MUTATION
29 / 29
RESOURCES
THANK YOU