【问题标题】:ActiveModel::Serializers with nested objects带有嵌套对象的 ActiveModel::Serializers
【发布时间】:2013-11-04 08:39:27
【问题描述】:

我正在开发使用 ActiveModel::Serializers 的 Rails API 应用程序。我面临的问题是我无法为使用ActiveModel::Serializers 的所有呼叫创建单一响应格式。我尝试了几种方法。其中之一是创建一个对象,该对象将负责使用这样的序列化器呈现Response 的结果:

class ResponseSerializer < ActiveModel:Serializers

attributes :result, :error

end

然后,对于结果属性,我分配了一个分配了自定义序列化程序的对象 (ObjectSerializer)。

问题是,当我显式调用 render @object 时,会调用自定义序列化程序,但是当我将 object 分配给正在使用 ResponseSerializer 类的 Response 对象时,结果属性会生成没有调用ObjectSerializer 类。有人可以帮忙解决这个问题吗?

【问题讨论】:

    标签: ruby-on-rails ruby api activemodel


    【解决方案1】:

    让你的 ObjectSerializer 继承你的 ResponseSerializer 怎么样?还是使用mixin?

    【讨论】:

    • 我尝试了这种方法,但如果我在 objectSerializer 类中,我仍然无法将错误与响应放在同一个节点中。或者反过来。我无法在与 root 不同的任何子节点中呈现自定义序列化程序。
    猜你喜欢
    • 2017-11-01
    • 2018-01-21
    • 2013-07-19
    • 2018-05-11
    • 2019-03-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-18
    相关资源
    最近更新 更多