0
網址:www.example.com/1(其中1是從表ID = 1)Laravel的跳躍()函數只在第一查詢工作
我有一個按鈕,允許用戶去下或者可能的話以前的記錄。 (www.example.com/2):
$next = Video::where('id', '>', $id)->min('id');
現在,當我希望用戶能夠跳10條記錄我想:
Video::where('id', '>=', $id)->skip(10)->first();
我得到正確的記錄(可以說從1跳到11)。但是,當我轉到下一個記錄(www.example.com/2)時,我會得到與skip()函數(11)完全相同的結果,甚至在記錄3中進一步下降,它仍然不會更新?
我沒有檢查進入skip()查詢的$ id是否正在更改。爲什麼這個功能不會更新?
P.S: 我的控制器:
public function show ($id){
$next = Video::where('id', '>', $id)->min('id');
$previous = Video::where('id', '<', $id)->max('id');
$skip = Video::where('id', '>=', $id)->skip(10)->first();
return view('page',[
'next' => $next,
'prev' => $prev,
'skip' => $skip,
}
您試過了'$ skip = Video :: where('id','> =',$ id) - > get($ id + 10);'我不確定它是否會工作,如果get()會接受一個參數,但試試看。 – Chris
你能告訴我們下一個按鈕的代碼嗎? – Maraboc
@Chris該方法的問題是我的ID不是全部順序的。因此,它可能比想要的記錄少跳過,也可能沒有這樣的ID。我認爲skip()克服了這個問題。 – stepbystep