Вызов неопределенного метода Illuminate\Database\Eloquent\Builder::links() (Вид: D:\xampp\htdocs\mieaceh\resources\views\shop.blade.php)

Я пытаюсь разбить свои категории на страницы shop.blade.php, но получаю эту ошибку:

Вызов неопределенного метода Illuminate\Database\Eloquent\Builder::links() (Вид: D:\xampp\htdocs\miaceh\resources\views\shop.blade.php)

Вот мой MenuController.blade.php

if (request()->category) {
  $menu = Menu::with('categories')->whereHas('categories', function ($query) {
    $query->where('slug', request()->category);
  });

  $categories = Category::all();
  $categoryName = $categories->where('slug', request()->category)->first()->name;
} else {
  $menu = Menu::inRandomOrder()->take(10)->paginate(8);
  $categories = Category::all();
  $categoryName = 'Featured';
}

return view('shop')->with([
        'menu' => $menu,
        'categories' => $categories,
        'categoryName' => $categoryName,
]);

и мой shop.blade.php

<div class = "category text-center">
@foreach($categories as $category)
<a href = "{{ route('menu.index', ['category' => $category->slug]) }}">
    <div class = "card-category" style = "width: 10rem; height: 4rem;">
        {{ $category->name }}
    </div>
</a>
@endforeach
{{ $menu->links() }}

Как это решить?

Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
1
0
3 209
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

Прямо сейчас, если у вас есть request()->category, вы не добавляете разбиение на страницы в запрос $menu. Просто добавь

 $menu = Menu::with('categories')->whereHas('categories', function ($query) {
        $query->where('slug', request()->category);
    })->paginate(8);

В запросе меню отсутствует метод pagiante():

$menu = Menu::with('categories')->whereHas('categories', function ($query) {
            $query->where('slug', request()->category);
        })->paginate(8);

То, как вы выполнили свой запрос, возвращало класс QueryBuilder, у которого нет метода links() (разбиения на страницы). Таким образом, вы вернете набор данных, которые сможете разбить на страницы.

Другие вопросы по теме