CI 묻고 답하기

제목 ci4 pager 재문의드립니다.
카테고리 CI 4 관련
글쓴이 nuno 작성시각 2020/04/28 15:01:11
댓글 : 4 추천 : 0 스크랩 : 0 조회수 : 13582   RSS

이전에 문의드렸던 부분에 부족한 부분이 있었습니다. 다시 문의드리겠습니다.

http://ci4doc.cikorea.net/libraries/pagination.html

위 주소의 메뉴얼 내용을 보고 페이지네이션을 구성을 하는중에 이상한 부분이 있어 문의드립니다. 

아래 코드는 예를 들기위해 메뉴얼의 코드를 이용했습니다.

 

$model = new \App\Models\BoardModel();
$data = [
           'board' => $model->paginate(10),
            'pager' => $model->pager
];
	
var_dump($data['pager']->links());
var_dump($data['pager']->makeLinks(1, 10, 100));

$pager->makeLinks() 에서 반환된 링크 도메인의 페이지쿼리 매개변수명이 pager_1588053312 이렇게 나오고

페이지 로드시마다 숫자 부분이 변경이되고 있습니다. 뷰 템플릿 파일(CodeIgniter\Pager\Views\default_full)은 수정하지 않았습니다. 

메뉴얼을 아무리 읽어봐도 위와 관련된 내용을 확인을 할수가 없어 해결방법이 있는지 문의드립니다. 혹시 몰라 모델 부분도 첨부합니다. 

 

var_dump($data['pager']->links());

<nav aria-label="Page navigation">
	<ul class="pagination">
		<li>
				<a href="http://domain.com/admin/board/list/free?page=1" aria-label="First">
					<span aria-hidden="true">First</span>
				</a>
		</li>
			<li>
				<a href="http://domain.com/admin/board/list/free?page=1" aria-label="Previous">
					<span aria-hidden="true">«</span>
				</a>
			</li>
		
					<li >
				<a href="http://domain.com/admin/board/list/free?page=2">
					2				</a>
			</li>
					<li >
				<a href="http://domain.com/admin/board/list/free?page=3">
					3				</a>
			</li>
					<li class="active">
				<a href="http://domain.com/admin/board/list/free?page=4">
					4				</a>
			</li>
					<li >
				<a href="http://domain.com/admin/board/list/free?page=5">
					5				</a>
			</li>
					<li >
				<a href="http://domain.com/admin/board/list/free?page=6">
					6				</a>
			</li>
		
					<li>
				<a href="http://domain.com/admin/board/list/free?page=7" aria-label="Next">
					<span aria-hidden="true">»</span>
				</a>
			</li>
			<li>
				<a href="http://domain.com/admin/board/list/free?page=22" aria-label="Last">
					<span aria-hidden="true">Last</span>
				</a>
			</li>
			</ul>
</nav>

 

var_dump($data['pager']->makeLinks(1, 10, 100));
<nav aria-label="Page navigation">
	<ul class="pagination">
		
			<li class="active">
				<a href="http://domain.com/admin/board/list/free?page_1588053312=1">
					1				</a>
			</li>
					<li >
				<a href="http://domain.com/admin/board/list/free?page_1588053312=2">
					2				</a>
			</li>
					<li >
				<a href="http://domain.com/admin/board/list/free?page_1588053312=3">
					3				</a>
			</li>
		
					<li>
				<a href="http://domain.com/admin/board/list/free?page_1588053312=4" aria-label="Next">
					<span aria-hidden="true">»</span>
				</a>
			</li>
			<li>
				<a href="http://domain.com/admin/board/list/free?page_1588053312=5" aria-label="Last">
					<span aria-hidden="true">Last</span>
				</a>
			</li>
			</ul>
</nav>


 


<?php namespace App\Models;

use CodeIgniter\Model;

class BoardModel extends Model
{
	protected $table      = 'board';
	protected $primaryKey = 'id';
	protected $returnType = 'object';
	
	protected $useTimestamps = false;
	protected $createdField  = 'regDate';	
	protected $updatedField  = '';
	protected $deletedField  = 'delDate';
	protected $useSoftDeletes = true;
}
 다음글 db count sum 등등 함수 질문 (2)
 이전글 CI에서 $_REQUEST 변수를 항상 $request... (3)

댓글

한대승(불의회상) / 2020/04/28 16:54:42 / 추천 0

makeLinks() 사용시 6번째 매개변수 $group을 생략하게 되면 pager가 생성된 시간을 기준으로 그룹명을 자동으로 생성합니다.

1588053312 과 같은 숫자가 붙는게 싫다면 makeLinks(1, 10,100, 'default_full, 0, 'users') 처럼 모든 매개변수를 명시해 주세요.

nuno / 2020/04/28 17:38:04 / 추천 0

@한대승(불의화상) 

확인했습니다. 답변 감사합니다. 

말씀하신 부분처럼 메뉴얼에 나와있지 않는 내용은 어떻게 확인을 하시나요??

한대승(불의회상) / 2020/04/28 17:55:37 / 추천 0
@nuno 소스 코드를 열어보지요. ^.^
nuno / 2020/04/28 18:12:13 / 추천 0

@한대승(불의화상)

아 소스를 확인을 해야하는군요 초보라서 좀 어렵네요 

답변 감사합니다. ^^