Algumas dúvidas
01 - Quando utiliza a chamada da model com NomeModel:: ou injeta-la no construtor ou num método? Existe alguma diferença de desempenho em relação a esses tipos de utilização?
02 - nesta aula recuperamos os Aeroportos e Cidades através de
$airports = Airport::with('city')->get();
considerando que não temos o id do estado na tabela airports, como poderia trazer nesse sql tb o estado para mostrá-lo tambem; EX: ---7920 - Florianópolis-SC/Aeroporto Hecílio Luz---
Olá, Antonio!
1) Quando faz isso ModelName::metodo() estamos fazendo a chamada de algum método ou propriedade estática (static). Existe uma longa disculsão sobre esse assunto... em alguns testes mais complexos já realizados provou-se que usar recursos estáticos tem um desempenho mais lento.
2) Sobre essas dúvidas de relacionamentos de tabelas, é algo que detalhei passo a passo nesse curso: https://academy.especializati.com.br/curso/laravel-relacionamentos-tabelas-gratis
Sobre essa consulta:
$airports = Airport::with('city')->get();
Como no Model Airport tem o método city() que relaciona a cidade do aeroporto, ele já consegue trazer todos os aeroportos + a cidade do mesmo.
Dúvidas sobre a query? Troca o método ->get() por ->toSql() de debuga a variável $airports
Precisa estar logado para conseguir responder a este ticket!
Clique Aqui Para Entrar!