Php Laravel:搜索结果已分页,下一页不显示搜索关键字的下一页结果
因此,我有一个索引函数,它从我的Php Laravel:搜索结果已分页,下一页不显示搜索关键字的下一页结果,php,laravel,Php,Laravel,因此,我有一个索引函数,它从我的ProductsController中的数据库中获取所有产品,它使用以下路径: Route::get('{store}/products', [ 'as' => 'store.products.show', 'uses' => 'ProductsController@index', ]); 当我单击分页中的下一页时,URL变为http://127.0.0.1:8000/platform-管理/仓
ProductsController
中的数据库中获取所有产品,它使用以下路径:
Route::get('{store}/products', [
'as' => 'store.products.show',
'uses' => 'ProductsController@index',
]);
当我单击分页中的下一页时,URL变为http://127.0.0.1:8000/platform-管理/仓库1/产品?第2页
并正确显示下一页。
我现在的问题是,我对我的搜索结果
函数使用了相同的逻辑:
public function search_results(Request $request, $store)
{
$store = Store::where('slug', $store)->firstOrFail();
$substr = $request->search;
$products = Product::where('name', 'LIKE', "%{$substr}%");
$products = $products->where('store_id', $store->uuid)
->orderBy('name')
->paginate();
return view('platform-management.products.search', compact(
'store',
'substr',
'products'
));
}
哪个使用路线:
Route::get('{store}/products/search', [
'as' => 'products.search',
'uses' => 'ProductsController@search_results',
]);
它做的工作,它的工作。当我尝试搜索一个单词时,例如:
它会搜索带有“marikit”字样的产品。
请看一下网址
现在如果我点击搜索结果的下一页
我正在搜索的单词“marikit”不再包含在url中。搜索结果显示的内容与产品第二页显示的内容相同。
我试图将url更改为http://127.0.0.1:8000/platform-management/store1/products/search?search=marikit?page=2
但它只是附加在被搜索的单词后面
我错过了什么?谢谢你抽出时间 查询参数以
?
开头,以和分隔。所以你的url应该是
http://127.0.0.1:8000/platform-management/store1/products/search?search=marikit&page=2
http://127.0.0.1:8000/platform-management/store1/products/search?search=marikit&page=2