Class: SimpleCrud::Pagination::KaminariAdapter
- Inherits:
-
Object
- Object
- SimpleCrud::Pagination::KaminariAdapter
- Includes:
- Adapter
- Defined in:
- lib/simple_crud/pagination/kaminari_adapter.rb
Overview
Instance Method Summary collapse
- #paginate(controller, relation, options) ⇒ Object
-
#paginated_records(controller, relation, _options) ⇒ Object
Manual page scope: will_paginate shadows Relation#page when both load.
Instance Method Details
#paginate(controller, relation, options) ⇒ Object
13 14 15 16 |
# File 'lib/simple_crud/pagination/kaminari_adapter.rb', line 13 def paginate(controller, relation, ) records = paginated_records(controller, relation, ) controller.render({ json: records }.merge()) end |
#paginated_records(controller, relation, _options) ⇒ Object
Manual page scope: will_paginate shadows Relation#page when both load.
19 20 21 22 23 24 25 26 27 |
# File 'lib/simple_crud/pagination/kaminari_adapter.rb', line 19 def paginated_records(controller, relation, ) page = [controller.params[:page].to_i, 1].max per_page = page_size(controller) relation.limit(per_page).offset(per_page * (page - 1)).extending do include Kaminari::ActiveRecordRelationMethods include Kaminari::PageScopeMethods end end |