2014-09-03 2 views

ответ

2

Вы можете разобрать опционов Hash при создании нового экземпляра сериализатором, но единственный атрибут, он будет использовать это :root, как вы можете видеть на ActiveModel::Serializersource code:

def initialize(object, options = {}) 
    @object = object 
    @root = options[:root] || (self.class._root ? self.class.root_name : false) 
end 

Вы можете переопределить этот метод на вас Сериализатор и воспользуйтесь остальными вариантами, как вы пожелаете:

class PostSerializer < ActiveModel::Serializer 
    attributes :title, :body 

    def initialize(object, options = {}) 
    super(object, options) 
    # Your custom code goes here 
    end 
end