@Andriy231566

Как передать модель во все view с __construct?

Controller с которого все наследуется
public $new_comments_moderate;

public function __construct()
{
    $this->categories = $categories;
    $this->companies_modal = $companies_modal;

    $comments_count = CompaniesComment::query()
        ->where('status', 0)
        ->count();

    $this->new_comments_moderate = $comments_count;
}

Layouts
{{$new_comments_moderate}}

как можно сделать переменную ($new_comments_moderate) доступной в layouts чтобы не передавать в каждую view вот так
return view('admin.dashboard')->with([
    'new_comments_moderate' => $this->new_comments_moderate
]);
  • Вопрос задан
  • 167 просмотров
Пригласить эксперта
Ответы на вопрос 2
JhaoDa
@JhaoDa
LaravelRUS Team
Так, как написано в документации.
Ответ написан
AmdY
@AmdY
PHP и прочие вебштучки
Правильный вариант вам подсказал выше JhaoDa, завести провайдер, извлекать и пробрасывать данные в нужный шаблон через View::compose. Код, который вы налепили в конструкторе контроллера попахивает, там ему не место.

Но если надо быстрый и кривой костыль, то можете View::share('new_comments_moderate', $this->new_comments_moderate);
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы