我正在研究使用ActiveModel::Serializers的rails API应用程序。我面临的问题是我无法为所有使用 ActiveModel::Serializers
的呼叫创建单一的响应格式。我尝试了几种方法。其中之一是创建一个对象,该对象将使用如下序列化程序负责结果渲染Response
:
class ResponseSerializer < ActiveModel:Serializers
attributes :result, :error
end
然后对于结果属性,我分配了一个分配了自定义序列化程序的对象(ObjectSerializer
)。
问题是,当我显式调用render @object
时,会调用自定义序列化程序,但是当我将object
分配给正在使用 ResponseSerializer 类的响应对象时,结果属性会生成 json,而无需调用ObjectSerializer
类。 谁能帮助解决这样的问题?
的ObjectSerializer
继承你的ResponseSerializer
怎么样?还是使用混合?