Функциите take() и limit() няма да работят с нетърпеливо зареждане, ако извлечете повече от един родителски модел с помощта на get().
Така че трябва да постъпите по друг начин,
$categories = Category::with('contents')->get();
След извличане на $categories
, можете да направите цикъл foreach както по-долу,
$contents = [];
foreach($categories as $category){
$category->limitedContents = $category->contents()->with('languages')->limit(4);
}
И като направите това, ще получите 4 съдържание на категория във всички категории с limitedContents
.