Создаю форум на laravel, использую стандартный набор (Eloquent, Blade) Задача такова: Есть разделы, у разделов категории, у категорий темы, у тем сообщения. На странице с списком категорий, выводится коли-во тем и сообщений в каждой категории. С темами всё работает
{{ $category->themes->count() }}
А вот с сообщениями выводит ошибку
{{ $category->themes->messages->count() }}
При этом, если перебирать циклом
@foreach ($category->themes as $theme)
{{ $theme->messages }}
@endforeach
То сообщения выводятся (как и работает count). Но хотелось бы реализовать без циклов, возможно ли это и, если да, то как?
Может, все дело в том, что объект в поле themes не имеет поля messages? Насколько я понял из приведенного кода, themes - это коллекция, элементами которой являеются messages (которые в свою очередь являются коллекциями). Т.е. если сравнивать с массивами, то это эквивалентно двумерному массиву.
Предлагаю Вам рассмотреть возможность подготовить эти данные в контроллере и передать в view уже готовыми. В котроллере все же проще будет и dd() пользоваться для проверки данных в непонятных случаях.
Сборка персонального компьютера от Artline: умный выбор для современных пользователей