给出以下控制器代码:
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)
。
答案 0 :(得分:0)
include
选项传递给适配器。适配器主要通过将其传递给每个序列化程序中的serializable_hash
来使用它。因此,您可以重新定义该方法,检查它并调用超级
否则,我不确定你要做什么。