페이지네이션 업그레이드
문서
변경된 사항
새 페이지네이션 라이브러리를 사용하려면 뷰와 컨트롤러를 모두 변경해야 합니다.
페이지네이션 링크를 커스터마이즈하려면 뷰 템플릿을 만들어야 합니다.
CI4의 페이지네이션은 실제 페이지 번호만 사용합니다. CI3에서 기본값인 항목의 시작 인덱스(오프셋)는 사용할 수 없습니다.
CodeIgniter\Model을 사용하면 Model 클래스의 내장 메서드를 사용할 수 있습니다.
업그레이드 가이드
뷰에서 다음과 같이 변경하십시오:
<?php echo $this->pagination->create_links(); ?>를<?= $pager->links() ?>로
컨트롤러에서는 다음과 같이 변경해야 합니다:
모든 모델에서 내장
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);