Adicionar dados de autor ao componente de avaliações do livro
Acompanhar com o Trail Together
Deseja acompanhar um especialista enquanto trabalha nesta etapa? Veja este vídeo que faz parte da série Trail Together.
(Este clipe começa na marca dos 12:48 minutos, caso você queira retroceder e ver o início da etapa novamente.)
Introdução
Nesta etapa, você vai criar uma consulta com várias camadas para obter dados de objetos próximos e atualizar o componente recommendations da Books4Everyone. A Books4Everyone quer melhorar o componente recommendations adicionando o nome do autor a ele.
Como criar SOQL
Desta vez, eles não deram muito SQL para você trabalhar. Eles querem obter o nome do autor e exibi-lo no componente Books4EveryoneRecommendations. Veja a consulta atual que você está usando.
SELECT Name, Review__c, Rating__c, Book__r.Name FROM Recommendation__c WHERE Book__c != null
Como também quer obter o nome do autor, você olha para o modelo de dados a fim de ver como ele se relaciona com os objetos que já estão sendo consultados. As recomendações estão relacionadas com os livros, que estão relacionados com os autores. No SOQL, você pode fazer até sete pesquisas, ou seja, você sabe que está dentro dos limites.
- No Developer Console, abra a classe do Apex Books4EveryoneHomeController.
- Atualize o SOQL no método
getBookRecommendations
com uma nova linha de retorno.return [SELECT Name, Review__c, Rating__c, Book__r.Name, Book__r.Author__r.Name FROM Recommendation__c WHERE Book__c != null];
- Abra o componente do Lightning Books4EveryoneRecommendations
- Verifique se você selecionou o arquivo Component (Componente) no lado direito do console.
- Localize a seção do arquivo de componente que começa com <table e termina com </table> e substitua-a pelo que segue.
<table class="slds-table slds-table_bordered slds-table_cell-buffer"> <thead> <tr class="slds-text-title_caps"> <th scope="col">Book Title</th> <th scope="col">Author</th> <th scope="col">Rating</th> <th scope="col">Review</th> </tr> </thead> <tbody> <aura:iteration items="{!v.Recommendations}" var="recommendations"> <tr scope="row"> <td>{!recommendations.Book__r.Name}</td> <td>{!recommendations.Book__r.Author__r.Name}</td> <td>{!recommendations.Rating__c}</td> <td> {!recommendations.Review__c}</td> </tr> </aura:iteration> </tbody> </table>
- Salve os arquivos.
Perfeito! Agora você tem uma consulta com várias camadas e pode ver os resultados na sua página inicial.
A Books4Everyone está empolgadíssima com seu trabalho e agradeceu pessoalmente fazendo um bolo (em forma de livro, claro) em seu nome!
Resumo
Você aprendeu várias coisas neste projeto. Você foi de uma consulta SOQL simples a outra muito mais complicada e converteu consultas de SQL em SOQL. Tem muito mais que você pode fazer com SOQL, mas esse já é um bom começo! Um ótimo próximo passo é fazer os emblemas na trilha Aplicar habilidades de .NET ao Salesforce.