2016-03-01 51 views
0

我有,我想,以填補從我的數據庫物品的容器,例如每行都有這些列:多Laravel 5個在同一頁內Paginations

$item->title 
$item->description 
$item->color 
$item->id 

我有一個main-container並在那兒要循環我的所有物品,但一次只有5個。我知道我可以擁有所有這些,但我真的希望沒有滾動。

我知道整個頁面,您只需用->paginate(x);替換->get();,其中x是您希望每頁顯示的項目數。

但我也有一個secondary-container,我通過很多其他的項目要循環,但我不知道如何實現第二個,因爲main-container將工作當URL擴展?page=x其中x是第n大量的項目迭代。

我是否能有一個自定義get URL請求(不知道這個術語,糾正我,如果我錯了)和我secondary-container這樣做?page2=x

我搜索了周圍,但不知道如何把我的問題放入一個小的答案,結果並沒有幫助。先謝謝你。

+0

下面的答案有幫助嗎? – jszobody

+0

我睡着了,我很快就會嘗試你的,謝謝你的回答! @jszobody –

回答

2

如果你看一下paginate方法:

https://github.com/laravel/framework/blob/5.2/src/Illuminate/Database/Eloquent/Builder.php#L429

你看,它接受一個$pageName變量,告訴它這要求變量使用。

所以,你可以這樣做:

MyModel::where(...)->paginate(20, ['*'], 'fooPage'); 

而Laravel將使用$request->fooPage爲頁變量。

或者,你可以看到PAGINATE方法也可以讓你只明確在頁面變量本身作爲第四個參數傳遞:

MyModel::where(...)->paginate(20, ['*'], null, $request->myPageVar); 

而且現在GET變量?myPageVar=1將設置頁面。

+0

謝謝!工作完美:) –