繁体   English   中英

Active Model序列化程序不使用序列化程序

[英]Active Model Serializer use no serializer

有时我不想为模型使用序列化程序,而其他时候我愿意。 我曾尝试请求nil序列化器,但无论如何似乎都使用了序列化器。

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

    has_many :check_ins, serializer: nil
end

在这种情况下,我想返回不带任何序列化程序的关联,但是无论如何它仍会使用CheckInSerializer

有没有解决的办法?

我认为您可以这样做:

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM