默认情况下,在每个索引操作的渲染调用中指定一个额外的选项



我有一个控制器

class Api::V1::InvoicesController < ApplicationController
def index
@invoices = Invoice.all
render json: @invoices, each_serializer: Api::V1::InvoicePreviewSerializer 
end
end

在每个控制器上,我将指定使用的序列化程序是间隔为Api::V1::

然后是型号名称,然后是型号名称,后跟PreviewSerializer

如何在应用程序控制器上指定在每个索引操作上附加each_serializer: Api::V1::MODEL_NAMEPreviewController

我没有测试过这个,但我认为它应该像这样工作:

# in the ApplicationController
def render(*args)
if action_name == 'index'
options = args.extract_options!
options[:each_serializer] = Api::V1::InvoicePreviewSerializer
args << options
end
super(*args)
end

希望有效并有所帮助!

相关内容

  • 没有找到相关文章

最新更新