我试图访问url params并显示基于url params的页面视图,而paginate使用laravel php

时间:2018-04-17 12:56:22

标签: php laravel paginate

我尝试访问url params并显示基于url params的页面视图,而从一个页面到另一个页面的paginate使用laravel paginate作为url重定向分页。在这里,我无法在重定向到下一个分页页面时调用方法。

Route:
Route::get('/cogs/ddd/{id}/{name}', 'CogsController@showPagenateDetails');

cogsController:
public function showPagenateDetails(Request $request)
    {
        echo "uuuuuuuuuuuuuuuuuuuuuuuuuuuu";
        return View::make('cogs');
    }

Access paginate url:
http://127.0.0.1:8080/cogs/ddd?id=12&name=uday

1 个答案:

答案 0 :(得分:0)

正如@Webinion对您的问题发表了评论,您似乎在混淆路线参数和网址查询参数。

路由参数是网址的一部分,它们是路径的一部分。另一方面,网址查询参数,也称为查询字符串,位于路径之后,前面有问号(?)。

在示例网址中,您有查询参数:

http://127.0.0.1:8080/cogs/ddd?id=12&name=uday

但是,您声明的路由需要路由参数。像这样的URL是有效的:

http://127.0.0.1:8080/cogs/ddd/12/uday

在这种情况下,12 ID uday名称

此外,在使用route params时,您可以将它们添加到控制器方法参数中:

public function showPagenateDetails(Request $request, $id, $name)
{
// ....

最后,如果您想要的是使用URL查询参数,请以这种方式更改路径路径:

Route::get('/cogs/ddd', 'CogsController@showPagenateDetails');

通过请求中的get方法捕获params:

$id = $request->get('id');
$name = $request->get('name');

如果您想了解有关Laravel路线和路线参数的更多信息,请参阅Routing chapter of Laravel doc