Пагинация результатов поиска с использованием Laravel ScoutPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Пагинация результатов поиска с использованием Laravel Scout

Сообщение Anonymous »

У меня возникла проблема с нумерацией страниц при использовании Laravel Scout и драйвера TNTSearch. Например, я хочу выполнить поиск по ключевому слову «Продукт 80». URL-адрес — localhost/search?keyword=product+80, и когда я перехожу на следующую страницу, URL-адрес становится localhost/search?query=Product%2080&page=2. В нем ничего не отображается. результаты поиска. Когда я вручную меняю URL-адрес на localhost/search?keyword=product+80&page=2, он работает нормально, как это исправить?

Панель поиска







Маршрут

Route::get('/search', 'ProductController@search')->name('products.search');


Контроллер

public function search(Request $request)
{
$keyword = $request->keyword;
$products = Product::search($keyword)->paginate(20);

return view('search.index', compact('keyword', 'products'));
}


Просмотр


@foreach ($products as $product)



{{ $product->name }}



@endforeach

{{ $products->links() }}



dd($request->all())

array:1 [▼
"keyword" => "Product 80"
]


dd($products)

LengthAwarePaginator {#315 ▼
#total: 100
#lastPage: 5
#items: Collection {#340 ▼
#items: array:20 [▼
0 => Product {#363 ▶}
1 => Product {#344 ▶}
2 => Product {#353 ▶}
3 => Product {#361 ▶}
4 => Product {#360 ▶}
5 => Product {#359 ▶}
6 => Product {#358 ▶}
7 => Product {#357 ▶}
8 => Product {#356 ▶}
9 => Product {#355 ▶}
10 => Product {#354 ▶}
11 => Product {#352 ▶}
12 => Product {#362 ▶}
13 => Product {#351 ▶}
14 => Product {#350 ▶}
15 => Product {#349 ▶}
16 => Product {#348 ▶}
17 => Product {#347 ▶}
18 => Product {#346 ▶}
19 => Product {#345 ▶}
]
}
#perPage: 20
#currentPage: 1
#path: "http://marketplace.test/search"
#query: array:1 [▼
"query" => "Product 80"
]
#fragment: null
#pageName: "page"
+onEachSide: 3
}


dd($request->ключевое слово)

"Product 80"


dd($request->query)

ParameterBag {#50 ▼
#parameters: array:1 [▼
"keyword" => "Product 80"
]
}


Подробнее здесь: https://stackoverflow.com/questions/542 ... avel-scout
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»