我正在使用Twig视图来处理我的苗条3应用程序,但我不知道如何使用下面的雄辩ORM进行分页是我的代码。
模特:
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class Todo extends Model
{
protected $table = "todo";
protected $fillable = [
'todo_name',
];
}
这是我渲染视图的代码
use App\Models\Todo;
$app->get('/', function ($request, $response) {
$data = Todo::all()->paginate(5);
return $this->view->render($response, 'home.twig', [
'title' => 'Home',
'todolist' => $data,
]);
})->setName('homepage');
我收到了这个错误
Method paginate does not exist.
答案 0 :(得分:1)
尝试$ data = Todo :: paginate(5);
答案 1 :(得分:0)
要使用分页,您需要illuminate/pagination
个包。当您包含illuminate / database时,默认情况下不包括它。您可以使用composer将其包含在项目中:
composer require illuminate/pagination
在调用all()或get()之后,不应该调用paginate()方法。试试这个:
$data=Todo::paginate(5);
请注意,为了使分页正常工作,它需要知道当前页码,否则它将始终返回第一页的结果。请查看this answer,了解如何设置页面解析器。