使用 Modell::find(array()) 时如何在 Laravel 中分页

Posted

技术标签:

【中文标题】使用 Modell::find(array()) 时如何在 Laravel 中分页【英文标题】:How to paginate in Laravel when using Modell::find(array()) 【发布时间】:2015-06-11 09:57:06 【问题描述】:

我正在使用 find 方法在 Laravel 中获取一些数据,并且只获取我想要的 id:

$my_ids = array(1,4,5,10); $results = Model::find($my_ids);

但是,如果我尝试通过Model::find($my_ids)->paginate(10) 进行分页,则会引发错误:Call to undefined method Illuminate\Database\Eloquent\Collection::paginate()

如何在使用分页的同时查询仅从数据库中获取特定模型 ID?

【问题讨论】:

【参考方案1】:

原来我可以使用这种语法:

$results = Model::whereIn('id', $my_ids)->paginate(10);

【讨论】:

【参考方案2】:

我建议使用eloquent query builder:

$results = Model::whereIn('id', $my_ids)->paginate(10);

【讨论】:

太可怕了,你发布的答案几乎和我刚刚做的一样:) 呵呵,嗯... 只是几秒钟后的明显答案。 ;)

以上是关于使用 Modell::find(array()) 时如何在 Laravel 中分页的主要内容,如果未能解决你的问题,请参考以下文章

使用 array_diff 时保持重复

使用外部 Array 方法修改 Array 实例自身

array_diff_key — 使用键名比较计算数组的差集

array_diff_key — 使用键名比较计算数组的差集

PHP使用array_combine和array_column

js Array数组的使用