You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在jsonapi-resources gem中为单个资源配置maximum_page_size

为特定JSONAPI资源配置自定义maximum_page_size

只需在目标资源类中定义maximum_page_size类方法,即可覆盖全局配置的分页尺寸限制,示例如下:

修改你的Api::LogResource类:

module Api
  class LogResource < ApplicationResource
    immutable
    model_name 'Api::Log'
    primary_key :uuid

    # 自定义该资源允许的最大分页尺寸
    def self.maximum_page_size
      5000 # 替换为你需要的具体数值
    end

    def self.default_sort
      [{ field: 'time_start', direction: :desc }]
    end
  end
end

说明:

  • 这个类方法会优先于全局配置生效,当请求/api/logs接口时,系统会使用这里定义的分页上限,其他资源仍遵循全局设置的1000限制。
  • 如果需要动态调整上限(比如根据环境或其他条件),也可以在方法内添加逻辑,例如:
    def self.maximum_page_size
      Rails.env.production? ? 5000 : 10000
    end
    

内容的提问来源于stack exchange,提问作者Anton-Ivanov

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.11 08:55:58