Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/290.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 在route Laravel中使用产品搜索_Php_Laravel_Model_Routes - Fatal编程技术网

Php 在route Laravel中使用产品搜索

Php 在route Laravel中使用产品搜索,php,laravel,model,routes,Php,Laravel,Model,Routes,我的产品目录具有以下层次结构: 产品->类别->生产线->产品 以及此层次结构的路由: Route::get('/products', ['as' => 'site.products.index', 'uses' => 'Site\ProductsController@index']); Route::get('/products/{categorySlug}',

我的产品目录具有以下层次结构:

产品->类别->生产线->产品

以及此层次结构的路由:

Route::get('/products',                                         ['as' => 'site.products.index',    'uses' => 'Site\ProductsController@index']);
Route::get('/products/{categorySlug}',                          ['as' => 'site.products.category', 'uses' => 'Site\ProductsController@category']);
Route::get('/products/{categorySlug}/{lineSlug}',               ['as' => 'site.products.line',     'uses' => 'Site\ProductsController@line']);
Route::get('/products/{categorySlug}/{lineSlug}/{productSlug}', ['as' => 'site.products.product',  'uses' => 'Site\ProductsController@product']);
之后,会有一些过滤器,如椅子、桌子、桌子等。 当用户点击一个过滤器时,我会带上有这个过滤器的产品

我想是这样的:

Route::get('/products/{categorySlug}/filter/{filterSlug}', ['as' => 'site.products.filter', 'uses' => 'Site\ProductsController@filter']);
但它将与其他路线发生冲突。

您应该将

Route::get('/products/{categorySlug}/filter/{filterSlug}', ['as' => 'site.products.filter', 'uses' => 'Site\ProductsController@filter']);
就在前面

Route::get('/products/{categorySlug}/{lineSlug}/{productSlug}', ['as' => 'site.products.product',  'uses' => 'Site\ProductsController@product']);

这意味着laravel将尝试在另一个过滤器之前匹配
过滤器。

太简单了!谢谢