Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

AngularJS &Laravel 4.2 recuperando dados de tabelas multip e unindo-as


A forma mais simples de recuperação de dados que você pode fazer aqui é fazer o seguinte:
$travelBills = Travelbill::with(['code','allowance'])->get();

Este é o Eager Loading e realizará três consultas:
  • Carregar todas as contas de viagem
  • Carregue todos os códigos que tenham chaves estrangeiras que correspondam a todos os IDs da conta de viagem e atribua-os a cada modelo de viagem
  • Faça o mesmo com as concessões

O que você terá no final é que todo modelo Travelbill já terá um modelo de Código e Subsídio associado, permitindo que você trabalhe como:
echo $travelBill->cost->SekInklMoms;

para um dos Travelbills que você carregou. Observe algumas coisas na primeira consulta:
  • As guias de viagem não filtrado, estamos carregando todos eles neste momento.
  • Estamos fazendo isso simplesmente , não necessariamente eficiente. Eu recomendo primeiro se sentir confortável com o carregamento de relacionamentos antes de entrar em coisas como junções (que quebram o espírito do Eloquent ORM em qualquer caso)