Revert "application model: move pagination extension to concern."

This reverts commit 7855e36d17.

Broke pagination due to incorrect memoization causing @paginator_count
to be shared between requests.
This commit is contained in:
evazion
2020-02-25 01:05:32 -06:00
parent e1362faf0d
commit b915f1c586
2 changed files with 15 additions and 8 deletions

View File

@@ -3,13 +3,6 @@ module PaginationExtension
attr_accessor :current_page, :records_per_page, :paginator_count, :paginator_mode
def paginated_search(params, defaults: {}, count_pages: params[:search].present?)
search_params = params.fetch(:search, {}).permit!
search_params = defaults.merge(search_params).with_indifferent_access
search(search_params).paginate(params[:page], limit: params[:limit], search_count: count_pages)
end
def paginate(page, limit: nil, count: nil, search_count: nil)
@records_per_page = limit || Danbooru.config.posts_per_page
@records_per_page = @records_per_page.to_i.clamp(1, 1000)

View File

@@ -4,7 +4,21 @@ class ApplicationRecord < ActiveRecord::Base
include Mentionable
extend HasBitFlags
extend Searchable
extend PaginationExtension
concerning :PaginationMethods do
class_methods do
def paginate(*args, **options)
extending(PaginationExtension).paginate(*args, **options)
end
def paginated_search(params, defaults: {}, count_pages: params[:search].present?)
search_params = params.fetch(:search, {}).permit!
search_params = defaults.merge(search_params).with_indifferent_access
search(search_params).paginate(params[:page], limit: params[:limit], search_count: count_pages)
end
end
end
concerning :PrivilegeMethods do
class_methods do