Пагинация Laravel перенаправляет на домашний маршрут после нажатия на ссылку на странице 2 - PullRequest
0 голосов
/ 15 ноября 2018

Моя пагинация Laravel не работает должным образом.Когда я пытаюсь щелкнуть по второй ссылке в разбивке по страницам laravel или по другой, а не по первой, она перенаправляет меня на домашний URL (localhost: 8000).

Ссылки на страницы Laravel перенаправляют на тот же маршрут, но с "page ="Параметр, но проблема в том, что на этом маршруте у меня есть контроллер с инструкциями if, который перенаправляет меня на домашнюю страницу.Как я могу отправить свои результаты разбивки на страницы на другой маршрут и правильно отобразить каждую страницу разбивки на страницы без влияния контроллеров.

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

    $per_page = 5; //default

    //Za ispis kategorija i tagova u filteru
    $filter_categories = Category::all();
    $filter_tags = Tag::all();


    if($request->per_page){ $per_page = $request->per_page; }


    //Ako ne postoji zahtjev za kategorijama i tagovima
    if(!$request->category && !$request->tags) {

        //Provjera da li postoji zahtjev za broj jela po stranici
        if(only_meals_per_page($request)){

            $meals = Meal::paginate($per_page);

            return view('index', compact('meals', 'filter_categories', 'filter_tags'));
        }

        //Ako ne postoji nikakvi zahtjev vrati se na početak
        return redirect('/');

    //Zahtjev za kategorijom
    } else if($request->category && !$request->tags) {

        $result = filter_meals_by_category($request->category, $per_page);

    //Zahtjev za tagovima
    } else if(!$request->category && $request->tags) {

        $result = filter_meals_by_tags($request->tags, $per_page);

    //Zahtjev za kategorijama i tagovima
    } else {

        $result = filter_meals_by_categories_and_tags($request->category, $request->tags, $per_page);

    }

    $meals = $result['meals'];
    $message = $result['message'];

    Session::flash('message', $message);
    return view('index', compact('meals', 'filter_categories', 'filter_tags'));

.. и пример массива $ result сметод нумерации страниц

$meals = Meal::where('category_id','=', NULL)->paginate($per_page);

Я знаю, что проблема , вероятно, в первом операторе if , который перенаправляет меня на дом, потому что в запросе больше не было категорий и тегов.

1 Ответ

0 голосов
/ 15 ноября 2018

Исправлена ​​проблема с добавлением строки запроса на получение запроса в ссылках на нумерацию страниц:

$meals->appends(request()->input())->links()
...