Module: RestPack::Serializer::ClassMethods

Defined in:
lib/restpack_serializer/serializable.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#keyObject

Returns the value of attribute key.



89
90
91
# File 'lib/restpack_serializer/serializable.rb', line 89

def key
  @key
end

#model_classObject

Returns the value of attribute model_class.



89
90
91
# File 'lib/restpack_serializer/serializable.rb', line 89

def model_class
  @model_class
end

Instance Method Details

#array_as_json(models, context = {}) ⇒ Object



91
92
93
# File 'lib/restpack_serializer/serializable.rb', line 91

def array_as_json(models, context = {})
  new.as_json(models, context)
end

#as_json(model, context = {}) ⇒ Object



95
96
97
# File 'lib/restpack_serializer/serializable.rb', line 95

def as_json(model, context = {})
  new.as_json(model, context)
end

#plural_keyObject



119
120
121
# File 'lib/restpack_serializer/serializable.rb', line 119

def plural_key
  self.key
end

#serialize(models, context = {}) ⇒ Object



99
100
101
102
103
104
105
# File 'lib/restpack_serializer/serializable.rb', line 99

def serialize(models, context = {})
  models = [models] unless models.kind_of?(Array)

  {
    self.key() => models.map {|model| self.as_json(model, context)}
  }
end

#singular_keyObject



115
116
117
# File 'lib/restpack_serializer/serializable.rb', line 115

def singular_key
  self.key.to_s.singularize.to_sym
end