2016-03-15 75 views
0

花了最后2个小时试图弄清楚,但似乎无法找到解决方案。我需要每页功能的表格显示帮助。我正在努力想出如何追加到URL参数?displayPerPage=10。我已经尝试过laravel的url()函数,但它只是给我/ displayPerPage/10 我也试过Request :: fullUrl(),但它接受任何参数。Laravel显示每页

我想写一个函数在jQuery中,将追加到URL,但有一个更好的方法。任何帮助赞赏!

编辑:我需要做的这点,因为我有一个下降在我的表下来的用户选择他们想要多少每页显示的结果

附:我使用laravel 5.1 WAMP

+0

HTTPS ://laracasts.com/discuss/channels/general-discussion/generating-a-route-with-a-query-string-parameter – MECU

+1

https://laravelcollective.com/docs/5.0/html有一个很棒的帮手功能' link_to_route',允许这是︰'link_to_route('route.name',$ title = null,$ parameters = array(),$ attributes = array());' – MECU

+0

这就是我正在寻找,但是,我只是重新安排我的代码使用link_to_route方法,它擦除我的其他参数,'orderBy = total_payment&sortBy = DESC',并替换'displayPerPage = 10',我需要一些将追加url的东西。 – max234435

回答

0

事情是这样的:

<a href="{{route('my-route')}}?perPage=10">link</a> 
从控制器

而现在,你可以这样说:

$request->input('perPage')

+0

感谢您的答案,如果我这样做,请删除我的其他参数,如sortBy和orderBy? – max234435

+0

如果你传递的参数不一样?就像你传递了多个参数? –

+0

这里是我目前在那里:?orderBy = date&sortBy = DESC,所以对此我需要附加一个&displayPerPage = 10。这需要从视图中进行选择,因为用户可以选择每页要查看的页数。另外,我在桌子上还有一个laravels paginator。 – max234435

0

您可以使用简单的路线:

Route::get('/displayPerPage/{perPage}', '[email protected]'); 

然后在控制器中:

public function index($perPgae) 
{ 
    $pages = Data::paginate($perPage); 

作为替代方案,您可以只添加到URL像 '/书籍?perpage = 10 &排序依据=东西&为了=递减'。然后在控制器使用这个数据:

$perPage = Input::get('perpage'); 
$orderBy = Input::get('orderby'); 
$order = Input::get('order'); 
$pages = Data::orderBy($orderBy, $order)->paginate($perPage); 

另一种方式来做到这一点是利用Laravel集体或简单的形式具有单按钮:

{!! Form::open(array('method' => 'Get', 'route' => array('myroute.edit', 10))) !!} 
    <button class="btn-xs btn-info">Edit</button> 
{!! Form::close() !!} 

,然后在控制器:

public function edit($perPage) 
{