Class: ActiveModelSerializers::Adapter::Attributes

Inherits:
Base
  • Object
show all
Defined in:
lib/active_model_serializers/adapter/attributes.rb

Instance Attribute Summary

Attributes inherited from Base

#instance_options, #serializer

Instance Method Summary collapse

Methods inherited from Base

#as_json, #cache_key, cache_key, default_key_transform, #fragment_cache, fragment_cache, inherited, transform, transform_key_casing!

Constructor Details

#initializeAttributes

Returns a new instance of Attributes.



6
7
8
9
# File 'lib/active_model_serializers/adapter/attributes.rb', line 6

def initialize(*)
  super
  instance_options[:fieldset] ||= ActiveModel::Serializer::Fieldset.new(fields_to_fieldset(instance_options.delete(:fields)))
end

Instance Method Details

#serializable_hash(options = nil) ⇒ Object



11
12
13
14
15
16
17
# File 'lib/active_model_serializers/adapter/attributes.rb', line 11

def serializable_hash(options = nil)
  options = serialization_options(options.dup)
  options[:fields] ||= instance_options[:fields]
  serialized_hash = serializer.serializable_hash(instance_options, options, self)

  self.class.transform_key_casing!(serialized_hash, instance_options)
end