Как избежать вложения в Serializer на ассоциации has_one?
У меня есть ProfileSerializer:
class ProfileSerializer < ActiveModel::Serializer
attributes :id, :role, :name
has_one :company
end
и я получаю
{"user": {"id":7,"role":"guest","name":"misa","company":{"id":2,"user_id":7, ...}}
У меня есть шанс избежать вложенности "компании" и получить JSON вот так:
{"user": {"user_info": {"id":7,"role":"guest","name":"misa"}, "company_info": {"id":2,"user_id":7, ...}}}
1 ответ
Решение
Вы можете попробовать это:
class ProfileSerializer < ActiveModel::Serializer
attributes :id, :role, :name, :company_info
def company_info
object.company
end
end