Как отобразить список родительских категорий в Laravel?

Битый час не могу понять, как мне отобразить список родительских категорий для хлебных крошек. Дочерние категории тоже нужны, кстати, но думаю там по аналогии.

Есть таблица категорий, в которой указаны ID родительских примерно в таком формате: введите сюда описание изображения

В контроллере:

public function category(Category $categoryName) {
$products = Product::getByCategoryName($categoryName->title);
return view('category.category', [
            'category' => $categoryName,
            'products' => $products,
           ]);
}

В модели Category следующее:



class Category extends Model
{
    use HasFactory;
    protected $primaryKey = 'name';
    public $incrementing = false;

    public function parent()
    {
        return $this->belongsTo('App\Models\Category', 'parent_id');
    }

    public function children()
    {
        return $this->hasMany('App\Models\Category', 'parent_id');
    }
    public function getParentsAttribute() {
        $parents = collect([]);

        $parent = $this->parent;

        while(!is_null($parent)) {
            $parents->push($parent);
            $parent = $parent->parent;
        }

        return $parents;
    }
}

А в blade делаю так:

 @if(count($category->parents))
    <td>{{ $category->parents->implode('-') }} <strong>-></strong> {{ $category->name }}</td>
@else
    <td>{{ $category->name }}</td>
@endif

Подскажите, что не так? При моем раскладе я на выходе получаю только текущую категорию.


Ответы (0 шт):