CI 묻고 답하기

제목 pager 질문드립니다.
카테고리 CI4 관련
글쓴이 Austin 작성시각 2020/11/19 10:45:44
댓글 : 7 추천 : 0 스크랩 : 0 조회수 : 136   RSS

안녕하세요 CI4 버전으로 이것저것 만져보는 중에 pagination 을 하려고 document를 보면서 진행하고 있습니다.

현재 저는 model 을 거치지 않고 controller 에서 바로 db 에 접근하여 데이터를 view 로 전달하고 있습니다.

근데 document를 보니 paginate 가 내장함수라고 되어있고, $model 이라는 인스턴스를 새로 받아서 pagination을 진행하더라구요.

저는 따로 model 을 사용하지 않아서 instance를 생성할게 없구요.

 

질문입니다.

1. paginate가 내장되어있다는데 어떻게 사용할 수 있나요?

2. 새로운 인스턴스를 받지 않고 사용하는 방법이 있나요?

 다음글 엑셀 파일 리드 시 엑셀에 빈셀 처리 문제 (5)
 이전글 CI를 서버이전으로 카페24호스팅으로 옮기게됐습니다. (4)

댓글

테러보이 / 2020/11/19 10:58:16 / 추천 0

모델을 사용한 페이징

# 컨트롤러

// 검색 정리
$where = [];
$where_like = [];

// 데이터 출력
$data['list'] = $this->uModelAccountBank->where($where)->like($where_like)->orderBy('idx', 'desc')->paginate(); // paginate(default 20)
$data['pager'] = $this->uModelAccountBank->pager;
$data['pager_info'] = $data['pager']->getDetails();

# 뷰

<?php
echo $pager->makeLinks($pager_info['currentPage'], $pager_info['perPage'], $pager_info['total'], 'default');
?>

 

쿼리빌더는 잘 모르겠네요.

Austin / 2020/11/19 11:00:42 / 추천 0

@테러보이

답변 감사드립니다.

혹시 모델을 사용하지 않고는 pager를 사용하는 방법은 없을까요..?!

PureAni / 2020/11/19 11:05:37 / 추천 0
테러보이 / 2020/11/19 11:08:29 / 추천 0

@Austin

개인적으로 방법을 못찾겠네요.

ci3처럼 페이징을 써야겠네요.

 

전 모델 사용을 권장 드립니다 ㅎㅎㅎ

Austin / 2020/11/19 11:42:17 / 추천 0

@PureAni 

답변 감사합니다.

찾아봤는데 다 모델 사용하는것 같아서요 ㅠ

@테러보이

답변 감사합니다.

한번 해봐야겠네요!ㅜㅜ

PureAni / 2020/11/19 11:58:41 / 추천 0

@Austin

pager 서비스 가져와서 총 게시글 수와 한페이지당 보여줄 게시글 수 현재 페이지 그리고 템플릿만 지정하면 나오는거라 모델 사용 안합니다.

모델에서 저 pager 를 사용해서 만들기는 합니다.

Austin / 2020/11/19 13:07:30 / 추천 0

@PureAni

답변 감사합니다.

시도해보겠습니다!