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

Laravel Eloquent Limit em Relação que tem Sub Relação


As funções take() e limit() não funcionarão com carregamento antecipado se você recuperar o modelo pai mais de um usando get().

Então você tem que fazer de outra maneira,
$categories = Category::with('contents')->get();

Após recuperar $categories , você pode fazer o loop foreach como abaixo,
$contents = [];
foreach($categories as $category){
   $category->limitedContents = $category->contents()->with('languages')->limit(4);
}

E ao fazer isso você terá 4 conteúdos por categoria em todas as categorias com limitedContents .