php - 具有 laravel 查询限制的数据表服务器端分页

标签 php laravel-4 datatable server-side

我在 laravel 中使用下面的随机行数查询。

Select * from table order by rand() limit 0,1000

我的数据表分页大小为 100,但当我在查询中使用限制时,分页无法正常工作。

我如何在带有服务器端分页的 laravel 中使用上面的查询来实现这个?

谢谢!

最佳答案

你应该尝试在查询结果后进行分页,因为 Laravel 会自动添加限制。将以下代码添加到您的模型中:

public function getPaginatorResults($pagination) {
    $total = $this->getTotal();
    $query = $this->orderByRaw('rand()')
                  ->skip($pagination * (\Paginator::getCurrentPage() - 1))
                  ->take($pagination);
    $results = $query->get();

    return \Paginator::make($results->all(), $total, $pagination);
}

关于php - 具有 laravel 查询限制的数据表服务器端分页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37019380/

相关文章:

php - Blade 模板可能无法在 Laravel 4.1 中工作?

laravel-4 - 拉拉维尔 4 : Eloquent soft deletes and relationships

javascript - 如何提交放置在数据表中的表单?

java - JSF:空嵌套数据表

php - 通过下拉 MYSQL 将值插入数据库。 "Error in your SQL syntax;"

php - cURL 通过命令行工作,但不能在 PHP Curl 中工作

php - 如何将 $_SERVER 变量注入(inject)到服务中

javascript - 在 PHP 中记录动态输入值

php - Laravel - undefined offset 0 - collection.php

javascript - 从 ajax API 响应加载数据时,Bootstrap dataTable 搜索和分页不起作用