Aula 25
Como Usar Produto Input Type para Facilitar a Mutation no GraphQL
Summary
Resumo do Transcript
Neste vídeo, o autor discute como implementar mutações e tipos de entrada (input types) usando GraphQL para gerenciar informações sobre companhias e produtos.
Principais Pontos:
-
Mutação para Adicionar Companhia:
- É mencionado que deve-se adicionar um input type para a companhia, garantindo que a propriedade
type
esteja correta. - O uso de
graphql
para tornar o campo obrigatório é explicado.
- É mencionado que deve-se adicionar um input type para a companhia, garantindo que a propriedade
-
Input Object Type:
- É sugerido criar um
input object type
para a companhia que inclua campos obrigatórios, como nome e data de fundação.
- É sugerido criar um
-
Uso de Variáveis:
- O autor menciona que o aprendizado sobre variáveis em GraphQL será útil para futuras implementações de consultas e mutações.
-
Mutações para Produtos:
- O usuário é incentivado a criar uma mutação para adicionar produtos, similar ao que foi feito para companhias.
- A estrutura da mutação é delineada:
- Nome da mutação:
adicionar produto
. - Campos do input type: ID do produto, nome, data de lançamento e imagem.
- Nome da mutação:
-
Criação do Produto:
- O autor fornece detalhes sobre o método
create produto
, enfatizando a necessidade de passar os parâmetros corretos. - A conexão com a API é feita, e a estrutura dos campos é revisada.
- O autor fornece detalhes sobre o método
-
Obtenção de Produtos:
- O uso de consultas (
query
) para obter os produtos criados é demonstrado.
- O uso de consultas (
-
Integração com Companhia:
- O autor destaca que a companhia deve ser vinculada ao produto criado através do ID da companhia.
- Ao adicionar um produto, é mostrado como passar o ID da companhia.
-
Teste e Validação:
- O processo de adicionar um novo produto e verificar se a companhia correspondente também aparece na lista é apresentado.
Conclusão
O vídeo aborda as etapas necessárias para implementar mutações e tipos de entrada em GraphQL, demonstrando como gerenciar entidades como companhias e produtos, e como vincular ambas usando IDs. A interação com a API é um aspecto central do processo.
Video Transcript
Então vamos, volto aqui, a mutação, adicionar a companhia, a companhia type, args, cada arg
tem um objeto type, então olha aqui, input, eu esqueci de botar dentro de um objeto com
o propriedade type, então objeto, propriedade type, como eu fiz anteriormente aqui.
Posso aproveitar também e fazer esse campo ser obrigatório, então vou usar new, graphql,
no no para o campo companhia ser o input ser obrigatório, se não tem nada para adicionar.
Então vamos tentar novamente, de volta ao navegador, vou ter companhias, tenho as três,
adicionar, agora adicionou o novo companhia, tá?
Então, receluzando o input type, por convenção você põe a propriedade de nome input, faça
aqui esse cara aqui e você cria um input type para a companhia, só para pegar os dados
mais fundamentais, nome, fundado em USITE, tem que ser criado como um input object type,
esse detalhe, aí você põe os fields lá repetidos, você pode até acompanhar input e de
volta aqui na mutação, você põe lá no args, põe um input, convenção e type,
companhia input type, new, graphql, no no para poder fazer o seu campo obrigatório,
tem que ter o companhia para poder criar, tá?
Então, esse negócio vai ser bem útil quando você aprender sobre variáveis,
que você pode até, olha aqui ó, query verbos, você pode adicionar variáveis para
as suas query ou mutação e vai aparecer aqui depois do nome, na mutação,
ou da query, então a gente ainda não sabe isso, mas vai poder usar isso depois, tá bom?
Então, vamos aqui, vou voltar o dito de texto, eu quero ver você fazer a mesma coisa para
criar um produto, tá bom? Faça uma mutação aqui, primeiro para criar, adicionar produto, faça um
input object, produto input object type e faça a mesma coisa que a gente fez aqui,
é certo para o produto, então vou esperar você fazer aí, depois a gente continua juntos,
e aí vamos lá, vamos aqui, vamos adicionar,
então nós temos, adicionar produto, mutação, nome vai ser, opa, não precisa de nome,
type, quando você adiciona produto, você pega de volta o quê?
Produto type, agora o args, vamos usar o input, que vai ser type, produto, input type,
a gente vai criar já já, depois disso resolve, value args, nós vamos fazer o quê?
Vamos chamar, nesse caso da API, se lembra API barra index, JTS, temos esse método create
produto, é só para assar o produto como objeto, volto a esquema, API create produto,
passa o produto, nesse caso vai ser o args, input, eu não vou filtrar nenhum parâmetro,
é isso como você quiser fazer, e vou retornar esse gar aqui, agora vamos fazer produto
input type, lá em cima, antes de produto, vamos aqui com esse produto, input type, new
graph, o quê? input object type, passa o objeto, basicamente nome, quase mesmo coisa
produto input, e os fields vai ser o quê? Vamos pegar o produto ID, nome, lançado em
imagem, então vamos pegar só copiar nome, lançado em imagem, vamos fazer calda, campo
obrigatório, new graph, o quê? Não, não, tá, é só isso, depois a gente lidar com os
produtos, vamos põe no seu quê, tá, então vamos lá, sonar produto, não sei o quê, vamos
testar, mutation, adicionar produto, nome da mutação, só para ter o nome, adicionar
field, dentro dessa metade, argumento inputs, vamos passar o quê? Tem o nome, vamos põe,
ipod, lançado em, nem lembro, sei lá, tá qualquer data aqui, tá errado provavelmente,
imagem, imagem eu não vou pôr qualquer coisa aqui, aí você tem que sempre dizer em a,
o quê que você quer ser, que seja retornado, só quero o ID, então recebi o ID 6, vamos fazer
uma query aqui, query, obter produtos, só o nome, eu vou falar produtos, e eu quero
ID, nome, lançado em imagem, vou rodar obter produtos, e tá lá embaixo o ipod que a gente
acabou de criar, tá bom, note que não tem companhia ID para esse cara que a gente não
adicionou, então não tem companhia, você vai adicionar companhia e o nome, não vai ter,
então vamos margainar isso, de volta aqui, a nosso input, produto input, você vai adicionar o
companhia ID, se você quiser que seja obrigatório, no GraphQL int, tá, adicionar companhia ID,
agora vamos criar o produto de novo, e vou passar companhia ID para C, acho que 1 né, que
é o Apple, vamos ver adicionar o produto, opa, não foi provided, hum, eu acabei adicionando
aqui não, ah, companhia ID, desculpa, ID, pronto, criou 6, vamos lá rodar o obter produtos,
e apareceu aqui, e a ipod lançado em companhia ID 1 e o companhia apareceu, agora aparece a Apple, tá,
então isso corrige aquele problema, a companhia, tá bom, não por essa aula é só, e até a próxima.
Nenhum comentário ainda (loading...)
Nenhum comentário ainda (loading...)
Gostou da aula? 😆👍
Apoie nosso trabalho com uma doação: