Laravel 8 Поиск с разбиением на страницы не работает должным образом

#laravel #laravel-8

#ларавель #laravel-8

Вопрос:

Я пытаюсь выполнить поиск с разбиением на страницы, но я застрял с этой ошибкой GET.

 function search_document(Request $request){
    $result = Document::where("title","like", "%".$request->input('query')."%")->paginate(5);
    return view('/admin/documents')->with(["documents"=>$result]);
}
 

Ошибка, которую я получил

  1. URL изменен на /api/search_document, который должен быть похож на /admin/documents
  2. Я получаю эту ошибку

введите описание изображения здесь

Маршрут выглядит следующим образом :

 Route::post("search_document",[adminDocumentController::class, 'search_document']);
 

Код блейд-файла

 <form action="/api/search_document" class="main__title-form" method="POST">
                        <input type="text" placeholder="Find document" name="query">
                        <button type="submit">
                            <i class="icon ion-ios-search"></i>
                        </button>
                    </form>
 

Пожалуйста, помогите мне

Комментарии:

1. Измените свой маршрут Route::post… на Route::get…

2. Тогда как я буду передавать данные запроса в Маршрут?

3. Я использую форму для выполнения действия поиска

4. Можете ли вы опубликовать свой form код вместе со своим вопросом

5. Вы можете просто переключиться method="POST" на method="GET" маршрут, а также с него. По умолчанию для разбиения laravel на страницы используется параметр get

Ответ №1:

Измените свой маршрут с post на get, тогда в вашем методе контроллера будет получен запрос в качестве параметра, ваш метод формы также должен быть GET,

ознакомьтесь с этим материалом о том, как реализовать функциональность поиска в laravel 8