Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 11.02.2015 23:21:11

Егор

Меню

Вложенное меню во вьшке выглядит

    <nav class="main-menu">
    @foreach(Category::all() as $category)
        <li>{{{($category->name)}}}<span> {{{$category->id}}}</span>
    <ul>
        @foreach(Post::where('category_id', '=', $category->id)->get() as $post) 
            <li>
                {{{$post->title}}}
            </li>
        @endforeach
    </ul>
    </li>
    @endforeach
    </nav>

Можно ли как то это дело упаковать в контроллере, и как можно автоматизировать создание таких меню?

#2 12.02.2015 11:59:23

Денис Бакатов

Re: Меню

Можно и в контроллере, но не самый верный способ, имхо. Есть несколько способов сделать меню автоматизированным:
1) Как ты и хочешь в контроллере, вызывая экшн контроллера, например SomeController::menu($параметры_для_меню);
2) Создать отдельный шаблон, как у тебя и сделано, перед подключением шаблона писать параметры;
Если нужны подробности, пиши на почту

#3 12.02.2015 14:05:07

Егор

Re: Меню

Мне не совсем нравится, что во вьюшке остается столько кода, хотя этот вариант похоже самый простой.

Копался в документации, вроде как есть способ, в модели вытащить сразу массив с родительскими и дочерними элементами. Только еще не до конца разобрался как он работает.

    DB::table('any')->join()

Можно еще про него по подробнее?

Подвал раздела