我有通过此路线调用的控制器website.lrv/products/{category-url}
public function categoryProducts($uri, Request $request) { /** some code **/ }
我有一些负责订购产品的链接,我将它们直接添加到刀片模板中,如下所示:
route('client.category.products', [
'url' => Route::current()->url,
'order' => 'article',
'by' => 'desc' ])
route('client.category.products', [
'url' => Route::current()->url,
'order' => 'article',
'by' => 'asc' ])
订购的请求链接是:
website.com/products/chargers?order=name&by=asc
现在我想添加产品过滤器。我有很多过滤器,每个过滤器可以包含很多值。问题是我不知道如何制定这样的路线:
website.com/products/chargers?width=10,20,30&height=90,120,150
或类似的东西。
我需要得到像这样的请求数组:
$request = [
....
filters => [
width => ['10','20','30'],
height => ['90','120','150'],
],
....
];`
如果您需要其他信息,我会编辑我的问题。
答案 0 :(得分:1)
您可以使用$request->query()
功能中的categoryProducts
来访问您要查找的阵列。
修改:还值得注意的是,您可以使用Laravel助手功能request()
从您的刀片模板中访问它们,因此{{ request()->query('width') }}
会返回xx
其中{ {1}}。
编辑2:请注意,如果您的查询字符串在示例website.lrv/products/category?width=xx
中包含逗号,则query()将只返回逗号分隔的字符串,因此您需要{{1} }以获取宽度数组
答案 1 :(得分:0)
我认为你必须像这样手动添加它们: 。路线( 'client.category.products') “?顺序=名&安培;可以通过= ASC”; 试试这个我希望它有所帮助。