活动模型序列化程序 0.9.4 堆栈太深错误
Active model serializer 0.9.4 stack too deep error
嗨,我的应用程序中的序列化器看起来像这样
class ProgressSerializer < ActiveModel::Serializer
attributes :id
has_one :race
end
class RaceSerializer < ActiveModel::Serializer
attributes :id
has_many :progresses
end
has_one 和 has_many 一起给我错误堆栈级别太深。
我尝试过的东西。
config/initializers/active_model_intializer.rb
ActiveModel::Serializer.setup do |config|
config.embed = :ids
config.include = true
end
我尝试的第二件事
class RaceSerializer < ActiveModel::Serializer
attributes :id
has_many :progresses , :serializer => ProgressSerializer
end
class ProgressSerializer < ActiveModel::Serializer
attributes :id
has_one :race , :serializer => RaceSerializer
end
型号
class Progress < ActiveRecord::Base
belongs_to :race
end
class Race < ActiveRecord::Base
has_many :progresses
end
你能分享你的 Model.rb
文件吗?
如果 Progress 是主要的,那么下面的 Races 应该有效。
class ProgressSerializer < ActiveModel::Serializer
attributes :id, :races
has_many :races
end
class RaceSerializer < ActiveModel::Serializer
attributes :id
end
然后尝试删除 has_many :progresses 并添加 has_one :race 到 Race with attributes :id, :race
嗨,我的应用程序中的序列化器看起来像这样
class ProgressSerializer < ActiveModel::Serializer
attributes :id
has_one :race
end
class RaceSerializer < ActiveModel::Serializer
attributes :id
has_many :progresses
end
has_one 和 has_many 一起给我错误堆栈级别太深。 我尝试过的东西。
config/initializers/active_model_intializer.rb
ActiveModel::Serializer.setup do |config|
config.embed = :ids
config.include = true
end
我尝试的第二件事
class RaceSerializer < ActiveModel::Serializer
attributes :id
has_many :progresses , :serializer => ProgressSerializer
end
class ProgressSerializer < ActiveModel::Serializer
attributes :id
has_one :race , :serializer => RaceSerializer
end
型号
class Progress < ActiveRecord::Base
belongs_to :race
end
class Race < ActiveRecord::Base
has_many :progresses
end
你能分享你的 Model.rb
文件吗?
如果 Progress 是主要的,那么下面的 Races 应该有效。
class ProgressSerializer < ActiveModel::Serializer
attributes :id, :races
has_many :races
end
class RaceSerializer < ActiveModel::Serializer
attributes :id
end
然后尝试删除 has_many :progresses 并添加 has_one :race 到 Race with attributes :id, :race