Module: ActiveModel::Serializable

Included in:
ArraySerializer, DefaultSerializer, Serializer
Defined in:
lib/active_model/serializable.rb

Instance Method Summary collapse

Instance Method Details

#as_json(options = {}) ⇒ Object



3
4
5
6
7
8
9
10
11
12
13
# File 'lib/active_model/serializable.rb', line 3

def as_json(options={})
  instrument('!serialize') do
    if root = options.fetch(:root, json_key)
      hash = { root => serializable_object }
      hash.merge!(serializable_data)
      hash
    else
      serializable_object
    end
  end
end

#embedded_in_root_associationsObject



23
24
25
# File 'lib/active_model/serializable.rb', line 23

def embedded_in_root_associations
  {}
end

#serializable_dataObject



15
16
17
18
19
20
21
# File 'lib/active_model/serializable.rb', line 15

def serializable_data
  embedded_in_root_associations.tap do |hash|
    if respond_to?(:meta) && meta
      hash[meta_key] = meta
    end
  end
end