0
Kaminari gem을 사용하여 API를 페이지 매김했습니다. 나는이 같은 내 컬렉션을 만드는거야 다음 API에서Kaminari를 사용하여 per (n) 메소드에 전달 된 값 가져 오기
def index
@my_models = MyModel.ordered_by_date
.page(params[:page])
.per(params[:count])
end
, 나는이 같은 고객을위한 일부 페이지 매김 링크를 걸었습니다 :
이json.current_page my_models_url(
page: @my_models.current_page,
count: @my_models.size
)
if [email protected]_models.last_page?
json.next_page my_models_url(
page: @my_models.next_page,
count: @my_models.size
)
end
if [email protected]_models.first_page?
json.prev_page my_models_url(
page: @my_models.prev_page,
count: @my_models.size
)
end
문제는 여기에의 마지막 페이지입니다, @my_models.size
은 페이지 당 레코드 수에 대한 올바른 결과를 반환하지 않습니다. 예를 들어 17
개의 레코드가 있고 페이지 크기가 5
이고 페이지가 4
인 경우 페이지 번호 URL의 카운트 매개 변수는 이되어야 2
이됩니다.
Kaminari 컬렉션에 .per(n)
값을 전달하는 쉬운 방법이 있는지 궁금합니다. 이 대신에 다음을 사용하는 것이 좋습니다.
params[:count] || MyModel.default_per_page