@Dimon3x

Как избавится от дублирования?

В главном контроллере делаю запрос на вывод категорий в шапку.

class MainController extends Controller
{
    public function index()
    {
        $category = Category::all();
        return view('index', ['category' => $category]);
    }
    
}


При загрузке другого вида, эта переменная уже не попадёт

public function imagesAllCategory($id)
    {
        $images = SubCategory::findOrFail($id);
        return view('category', [
            'images' => $images
             ]);
    }


Можно конечно же добавить продублировать код

public function imagesAllCategory($id)
    {
        
        $category = Category::all();
        
        $images = SubCategory::findOrFail($id);
        return view('category', [
            'images' => $images,
            'category' => $category
             ]);
    }


Но это очень плохо, придётся его дублировать в каждом методе, что бы категории
подгружались в шапку, как от этого избавиться?

Надо что бы переменная category была доступна в каждом виде
  • Вопрос задан
  • 114 просмотров
Решения вопроса 1
@Kostik_1993
PHP Backend Developer, Laravel, Yii, Vue, Node.js
View Composer решают вашу проблему. Читайте доки прежде чем писать код
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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