升级分页

文档

变更点

  • 你需要更改视图和控制器以使用新的分页库。

  • 如果要自定义分页链接,需要创建视图模板。

  • 在 CI4 中,分页只使用实际的页码。你无法使用 CI3 默认的项目起始索引(偏移量)。

  • 如果使用 CodeIgnite\Model,可以使用 Model 类中的内置方法。

升级指南

  1. 在视图中进行以下更改:

    • <?php echo $this->pagination->create_links(); ?> 改为 <?= $pager->links() ?>

  2. 在控制器中需要做以下更改:

    • 你可以在每个 Model 上使用内置的 paginate() 方法。请参阅下面的代码示例,看看如何在特定模型上设置分页。

代码示例

CodeIgniter 3.x 版本

<?php

$this->load->library('pagination');
$config['base_url']    = base_url().'users/index/';
$config['total_rows']  = $this->db->count_all('users');
$config['per_page']    = 10;
$config['uri_segment'] = 3;
$config['attributes']  = array('class' => 'pagination-link');
$this->pagination->initialize($config);

$data['users'] = $this->user_model->get_users(FALSE, $config['per_page'], $offset);

$this->load->view('posts/index', $data);

CodeIgniter 4.x 版本

<?php

$model = new \App\Models\UserModel();

$data = [
    'users' => $model->paginate(10),
    'pager' => $model->pager,
];

return view('users/index', $data);