2017-05-19 2 views
0

Articles::paginate(10) 이 코드는 10 번째 기사를 반환합니다. 다음 10 개 기사를 경로와 함께 반환하려면 어떻게해야합니까? 예를 들어, URL mypage.com/articles/2은 데이터베이스에서 2 번째 10 개의 기사를 반환합니다.
경로를 :
이 내가 가지고있는 지금까지입니다

라우트 레벨 람직한 페이지 매김 제어 페이지 번호 (경로 포함)

Route::get('articles/{page_number}', '[email protected]') 

컨트롤러 :

public function getArticles($page_num) 
{ 
    $perPage = 10; 
    Articles::getPaginator()->setCurrentPage($page_num); 
    $articles = Articles::paginate($perPage); 
    return $articles; 
} 

내가 Articles::pageNumber($page_number)->paginate($perPage); 뭔가를 할 수 있습니까?

답변

1

Laravel paginator는 쿼리 문자열에서 page의 값을 자동으로 확인하고 결과에 페이지 매김을 사용합니다. 또한 결과는 자동으로 다음 및 이전 링크를 생성하여 직접 추가 할 수 있습니다. 작동 시키려면 아무 것도 변경할 필요가 없습니다.

보기에서 $articles->links()을 사용하여 페이지 매김 탐색 단추를 생성 할 수 있습니다. 그러나 수동으로 페이지를 설정하려면이 작업을 수행 할 수 있습니다.

$articles = Articles::paginate(5, ['*'], 'page', $pageNumber); 

기본 페이지 매김 메서드는 다음 매개 변수를 사용합니다.

public function paginate($perPage = null, $columns = ['*'], $pageName = 'page', $page = null); 

기본 규칙은 당신이 탐색 버튼을 생성하기 위해 $articles->links()를 사용하는 경우, 당신은 또한 CSS를 사용자 정의 할 수 있습니다

mypage.com/articles?page=2 
mypage.com/articles?page=3 

또한입니다.

체크 아웃 https://laravel.com/docs/5.4/pagination 대한 추가 정보를 원하시면

+0

에 내가 오류 '방법 setCurrentPage이 – Newbie

+0

@Newbie 내 나쁜 exist.'하지 않습니다 가지고, 내가 매김 함께 일 이후 오랜 시간이되었습니다. 내 대답을 업데이트하고 확실하게 코드를 테스트했습니다. – Sandeesh