Active Model Serializer不使用序列化程序

时间:2018-03-22 16:08:38

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

有时我不想为模型使用序列化器,有时我也不喜欢。我试图请求nil序列化程序,但似乎无论如何使用序列化程序。

class API::FinancialDashboardSerializer < ActiveModel::Serializer
    attributes :id, :name, :weeks_remaining

    has_many :check_ins, serializer: nil
end

在这种情况下,我想返回没有任何序列化程序的关联,但它仍然使用CheckInSerializer

有解决方法吗?

1 个答案:

答案 0 :(得分:0)

我想你可以做到:

class API::FinancialDashboardSerializer < ActiveModel::Serializer
  attributes :check_ins, :id, :name, :weeks_remaining
end

如果那不起作用:

class API::FinancialDashboardSerializer < ActiveModel::Serializer
  attributes :check_ins, :id, :name, :weeks_remaining

  def check_ins
    object.check_ins.map(&:as_json)
  end
end