作者:手机用户2502880645 | 来源:互联网 | 2022-12-02 16:29
在我做一个选择某个字段和一些条件的查询之前.这行代码给了我正确的结果.
public function index()
{
// Get links
$links = Link::select('id', 'url', 'short_url', 'counter', 'expired_on')
->orderBy('id', 'desc')
->where('delete_flg', 0)
->get();
// Return data
return view('dashboard')->with(
array(
'links' => json_decode($links),
'current_datetime' => Carbon::now()
)
);
}
现在我想对上面的行实现分页.
$links = Link::select('id', 'url', 'short_url', 'counter', 'expired_on')
->orderBy('id', 'desc')
->where('delete_flg', 0)
->get()->paginate(2);
当我尝试在最后使用paginate(2)时,我得到错误:
Method Illuminate\Database\Eloquent\Collection::paginate does not exist.
所以从其他一些教程我尝试没有 - > get()然后paginate然后我得到这样的错误.
count(): Parameter must be an array or an object that implements Countable
我对如何实现paginate很困惑.
有人可以帮帮我吗?
1> utdev..:
你可以简单地做以下事情:
$links = Link::select('id', 'url', 'short_url', 'counter', 'expired_on')
->orderBy('id', 'desc')
->where('delete_flg', 0)
->paginate(2);
paginate已经像一个 ->get()
这就是您将数据/集合返回到视图的方式:
// return data
return view('dashboard', compact('links'));
紧凑的替代品:
return view('dashboard')->with([
'links' => $links
]);
然后在您的视图中,您可以对数据执行任何操作:
@foreach($links as $link)
{{ link }}
@endforeach