在活动模型序列化器类中是否可以访问`include`指令?

时间:2017-01-12 17:44:59

标签: ruby-on-rails active-model-serializers

给出以下控制器代码:

def show
  render json: @post, include: 'author', adapter: :json_api
end

在序列化程序中,我是否可以访问include指令?

class PostSerializer < ActiveModel::Serializer
  attributes :title, :body, :foo
  belongs_to :author

  def foo
    # can I gain access to the include_directive here somehow?
  end
end

我查看了@attributes@instance_options@object@root @scope@serializer_class(我可以看到的所有实例变量) pry)没有运气。

我正在使用active_model_serializers (0.10.2)

1 个答案:

答案 0 :(得分:0)

include选项传递给适配器。适配器主要通过将其传递给每个序列化程序中的serializable_hash来使用它。因此,您可以重新定义该方法,检查它并调用超级

否则,我不确定你要做什么。