В классах компонентов можно получать данные из БД и отправлять в представление для отрисовки. Для примера давайте сделаем компонент, динамически формирующий меню сайта. Пусть в этом меню будут ссылки на категории.
Для начала заюзаем модель категорий:
<?php
use App\Models\Category;
class Nav extends Component
{
}
?>
Теперь получим список категорий и отравим их в представление:
<?php
class Nav extends Component
{
public function render()
{
$categories = Category::all();
return view('components.nav', [
'categories' => $categories,
]);
}
}
?>
А теперь выведем переданные данные в представлении:
<nav>
@foreach ($categories as $category)
<a href="{{ $category['slug'] }}">{{ $category['name'] }}</a>
@endforeach
</nav>
Сделайте компонент, выводящий ссылки
на 5
самых популярных постов.