Module: Pagy::TypesenseRailsPaginator
- Defined in:
- lib/pagy/toolbox/paginators/typesense_rails.rb
Class Method Summary collapse
-
.paginate(search, options) ⇒ Object
Paginate from the search object.
Class Method Details
.paginate(search, options) ⇒ Object
Paginate from the search object
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
# File 'lib/pagy/toolbox/paginators/typesense_rails.rb', line 10 def paginate(search, ) if search.is_a?(Search::Arguments) # Active mode Searcher.wrap(search, ) do model, arguments, = search [:per_page] = [:limit] [:page] = [:page] method = [:search_method] || TypesenseRails::DEFAULT[:search_method] results = model.send(method, *arguments, ) [:count] = results.raw_answer['found'] [TypesenseRails.new(**), results] end else # Passive mode [:limit] = search.raw_answer['request_params']['per_page'] [:page] = search.raw_answer['page'] [:count] = search.raw_answer['found'] TypesenseRails.new(**) end end |