我正在使用 ActiveRecordSerializer 在 Rails 上构建 API 进行序列化。当我想呈现我使用的资源列表时:
render json: @resources
这会自动检测到资源有一个序列化程序,并使用它。
现在我想实现分页,我的想法是有一个名为 PaginatedResponse 的类,将其实例化并将其呈现为这样的 json:
render json: PaginatedResponse.new(@resources, <more meta information of the page>)
问题是,当我使用它时,一切正常,但资源不是使用 ActiveRecordSerializer 呈现的,而是使用默认的序列化程序。我怀疑这是因为 PaginatedResponse 没有扩展 ActiveRecord。
任何线索我该如何解决这个问题?