Laravel по-русски

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

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

#1 Re: Laravel 5.x » Категории и дочерние категории » 01.05.2019 19:12:00

Может кому пригодится.
Модель Category

public static function children($parent=null) {
   return Category::where('parent_id',$parent)->orderBy('name','desc')->get();
}

Контроллер

public function add() {
     $categories = Category::children(null);
     return view('orders.add', compact('categories'));
}

И сам вывод на страницу

<div class="form-group mb-4">
                        <label for="" class="text-dark">Категория</label>
                        <select name="" class="form-control select text-dark">
                            <option value=""></option>
                            @foreach($categories as $cat)
                                <option value="{{$cat->id}}">{{$cat->name}}</option>
                                @foreach($cat->children($cat->id) as $item)
                                    <option value="{{$item->id}}">&nbsp;&nbsp;&nbsp;&nbsp;--&nbsp;{{$item->name}}</option>
                                    @foreach($cat->children($item->id) as $item1)
                                        <option value="{{$item1->id}}">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;--&nbsp;{{$item1->name}}</option>
                                    @endforeach
                                @endforeach
                            @endforeach
                        </select>
                    </div>

Результат примерно таков будет https://ibb.co/cbZ1gZ2

Ну а дальше, если у вас куча под категорий по аналогии делать

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