AprelVovanya
@AprelVovanya
Кодю

Как сделать глобальную модель в Laravel?

Записи из определенной таблицы выводятся на каждой странице, и получается в каждом контроллере в каждом экшине указывается одна и та же строка:
$lists = List::all();
Как то можно это прописать, чтобы оно глобально что-ли было?
В Laravel только начинаю, не обязательно готовый код, подскажите хотя бы какую тему смотреть.
  • Вопрос задан
  • 181 просмотр
Решения вопроса 1
@procode
Разработчик
Вот ответ на ваш вопрос (на основе другого ответа):

https://si-dev.com/ru/blog/laravel-view-composers

Исчерпывающе и без воды :)

//мне самому было любопытно узнатьэ это ))
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
@jazzus
внутри контроллера можно так
public $lists;

public function __construct()
{
   $this->lists = List::all();
}

и обращаться в методах
$this->lists
или метод
public function getLists()
{
   return List::all();
}

и обращаться в методах
$lists=$this->getLists();
Для всего приложения можно подключить Трейт
Но для такого короткого кода я бы не стал заморачиваться. Только если сложнее запрос или предполагает рефакторинг в будущем (в таком случае точно в трейт или модель)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы