Aula 14
Relacionando Produto com Companhia (Pertence a Um no GraphQL)
Summary
Resumo do Transcript
Nesse vídeo, a discussão gira em torno do uso do GraphQL para trabalhar com produtos e as companhias associadas a eles. A seguir estão os principais pontos abordados:
-
Introdução ao Assunto:
- O apresentador menciona que a companhia possui vários produtos.
- A ideia é aprender a extrair dados da companhia associada a um determinado produto.
-
Consulta de Dados:
- O apresentador sugere que se alguém tiver dúvidas ou quiser saber mais sobre produtos da companhia, pode comentar usando comandos específicos.
-
Estrutura de Dados:
- Fala-se sobre a necessidade de adicionar um campo de companhia ao tipo de produto.
- É mencionado que, ao fazer uma consulta, devemos usar o
find
para localizar a companhia pelo ID associado ao produto.
-
Problemas e Resoluções:
- Um erro de referência ocorre porque a definição do tipo "companhia" vem depois da definição do tipo "produto".
- A solução proposta é definir os campos como uma função que retorna um objeto, o que evita o problema de referência.
-
Implementação:
- A implementação final resulta em uma consulta onde, para cada produto, a companhia associada pode ser recuperada, contendo informações como o nome da companhia (por exemplo, Apple, Google).
-
Conclusão:
- O apresentador conclui o vídeo reforçando a ideia de que agora temos uma maneira de acessar a companhia associada a cada produto através de uma abordagem correta no GraphQL.
Este resumo destaca a essência da aula sobre como estruturar consultas em GraphQL para relacionar produtos e suas companhias.
Video Transcript
olha o pessoal estamos de volta então companhia tem vários produtos né mas
agora a gente pega todos os produtos para acompanhar o tal mas e o post se você
tiver um produto que quiser saber mais detalhes da companhia
não é que faz deixa eu comentar aqui se você quiser comentar query só botar os
sinais da vela aqui ó esse caso é aperto comando barra para no maquete
comentar então se você tiver produtos por exemplo produtos aqui e tem companhia
e de mas não quero saber de companhia e de ninguém quer saber disso é o pruso
interno quero saber da companhia com a companhia desses produtos e agora não tem
como é que faz então vamos lá para o editor de texto então a gente tem
companhia tem vários produtos legal a gente fez isso mas agora a gente quer fazer o
oposto a sua ação reverso aqui é o produto
type tem a companhia a gente tem o companhia de aqui então vamos adicionar
companhia companhia como um campo agora qual o tipo desse cara e o tipo é
companhia né companhia type e mas o type está definido depois e agora vamos ver
o que dá o que dá o resolve desse cara
vamos ver vamos ver então você tem o produto que achar companhia desse produto
e onde é que tá a companhia tá na R&M aqui tem será que tem função já que a
gente escreveu para achar o produto e achar companhia pelo ID tem aqui ó você
pode achar companhia pelo ID com o find então a gente usa o companhia ponto find
da companhia então aquele lance de sempre que você tem que dizer ao
GraphQL como encontrar o recurso então para ir do produto para a companhia tem
que dizer o GraphQL tá certo eu tenho o produto o produto de companhia ID que é
o parent value ponto companhia ID o parent value aqui se lembra
então você vai chamar companhia ponto find com o ID do da companhia agora o
companhia esse produto tem companhia ID esse produto vai ser o parent value que é o
pai né então você vai da parent value ponto companhia ID
e isso coincide deve achar aquela companhia pelo ID você retorna isso
e salvar ver no que dá esse deu nenhum erro opa deu erro como a gente tinha
suspeitado antes tem um erro de referência porque companhia tá não tá definido
porque tá definido depois do prototype e agora como é que já faz esse negócio
e isso então tem uma maneira que de resolver isso é no fields em vez de você
definir com o objeto você vai definir esse cara como a função que retorna um
objeto esse objeto inteiro vai ser retornado de uma função só adicionar aqui
ó as parentes e as flechas aqui é certo então esse cara agora é uma função e
retorna um objeto tá por causa de um objeto tome cuidado e que adicionar o
sinal parentes aqui para indicar que é um objeto e não o bloco de função tá
então adicionar os parentes aqui cobrindo esse objeto vamos ver se prestou
já até pumping reuni muitos tipos cl игры que iam nessa que befica
o caso não sinal crystallizada aqui ainda vamos sairetos afö Upon
Então você sempre tem que ter pelo menos uma.
Vamos passar o nome, acompanha.
Tá aí então.
Olha aqui.
Você note que agora a gente pegou os produtos.
Não só o idê e o nome do produto, mas a companhia do produto.
Companha e pega o nome.
Apple, Apple, Google, assim por diante, tá?
Então é isso. A gente fez a...
Operação, post.
Então antes a gente tinha companhia,
queria pegar todos os produtos dessa companhia.
Agora a gente tem os produtos.
E para cada produto, você quer pegar a companhia do produto.
Para usar isso, a gente...
Pô, lá no produto type, adicionou a field companhia.
Type, companhia, type, e deu o resolve para dizer o GraphQL.
Como é que acha essa companhia?
Só para lá, companhia find pelo idê, que está dentro do objeto do produto.
Companha e idê.
Agora a gente teve o problema porque companhia e type
só foi definido depois da definição do produto type.
E não antes.
Aí deu problema de referência.
Para resolver isso, você muda o fields e em vez de ser só um objeto,
você muda ele para um tank, né?
Que é, na verdade, uma função...
Ah, não é tank nesse caso, é só uma função mesmo.
Função que retorna um objeto, tá?
Note que tenho parênteses aqui.
Vai significar que esse está retorno no objeto,
isso que não é bloco de função.
Tá bom?
Eu retorno implícito.
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: