avo-hq/avo

Add option to configure via_per_page on has_many

開放

#2,661 建立於 2024年4月4日

 (8 則留言) (2 個反應) (1 位負責人)Ruby (308 個分叉)user submission
ConfigurationEnhancementHelp wanted

倉庫指標

星標
 (1,778 顆星)
PR 合併指標
 (平均合併 1天 6小時) (30 天內合併 67 個 PR)

描述

Feature

Currently, it seems only possible to set a global via_per_page.

It would be useful to have the ability to override that value in the resource itself.

API could be something like:

module Avo
  module Resources
    class CatalogProduct < Avo::BaseResource
      def fields
         field :certifications, as: :has_many, per_page: 72
      end
  end
end

or alternatively, we could default it per resource.

module Avo
  module Resources
    class CatalogCertification < Avo::BaseResource
      self.via_per_page = 72
      self.per_page = 24
      def fields
        # ...
      end
  end
end

This is useful because in most case, we want a smaller pagination window, but we do have a few workflows where it's useful to see a large amount of items for triggering action on a batch of records.

Current workarounds

Not aware of any

Screenshots or screen recordings

Additional context

貢獻者指南