Module: ActiveModelSerializers

Extended by:
ActiveSupport::Autoload
Defined in:
lib/active_model_serializers/model.rb,
lib/active_model_serializers.rb,
lib/active_model_serializers/test.rb,
lib/active_model_serializers/adapter.rb,
lib/active_model_serializers/logging.rb,
lib/active_model_serializers/railtie.rb,
lib/active_model_serializers/callbacks.rb,
lib/active_model_serializers/deprecate.rb,
lib/active_model_serializers/test/schema.rb,
lib/active_model_serializers/adapter/base.rb,
lib/active_model_serializers/adapter/json.rb,
lib/active_model_serializers/adapter/null.rb,
lib/active_model_serializers/json_pointer.rb,
lib/active_model_serializers/key_transform.rb,
lib/active_model_serializers/deserialization.rb,
lib/active_model_serializers/test/serializer.rb,
lib/active_model_serializers/adapter/json_api.rb,
lib/active_model_serializers/adapter/attributes.rb,
lib/active_model_serializers/adapter/json_api/link.rb,
lib/active_model_serializers/adapter/json_api/meta.rb,
lib/active_model_serializers/serializable_resource.rb,
lib/active_model_serializers/serialization_context.rb,
lib/active_model_serializers/adapter/json_api/error.rb,
lib/active_model_serializers/adapter/json_api/jsonapi.rb,
lib/active_model_serializers/adapter/json_api/relationship.rb,
lib/active_model_serializers/adapter/json_api/deserialization.rb,
lib/active_model_serializers/adapter/json_api/pagination_links.rb,
lib/active_model_serializers/adapter/json_api/resource_identifier.rb

Overview

/ JSON API specification rubocop:disable Style/AsciiComments TODO: implement!

☐ https://github.com/rails-api/active_model_serializers/issues/1235

TODO: use uri_template in link generation?

☐ https://github.com/rails-api/active_model_serializers/pull/1282#discussion_r42528812
  see gem https://github.com/hannesg/uri_template
  spec http://tools.ietf.org/html/rfc6570
  impl https://developer.github.com/v3/#schema https://api.github.com/

TODO: validate against a JSON schema document?

☐ https://github.com/rails-api/active_model_serializers/issues/1162
☑ https://github.com/rails-api/active_model_serializers/pull/1270

TODO: Routing

☐ https://github.com/rails-api/active_model_serializers/pull/1476

TODO: Query Params

☑ `include` https://github.com/rails-api/active_model_serializers/pull/1131
☑ `fields` https://github.com/rails-api/active_model_serializers/pull/700
☑ `page[number]=3&page[size]=1` https://github.com/rails-api/active_model_serializers/pull/1041
☐ `filter`
☐ `sort`

Defined Under Namespace

Modules: Adapter, Callbacks, Deprecate, Deserialization, JsonPointer, Jsonapi, KeyTransform, Logging, Test Classes: Model, Railtie, SerializableResource, SerializationContext

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.loggerObject

Returns the value of attribute logger.



18
19
20
# File 'lib/active_model_serializers.rb', line 18

def logger
  @logger
end

Class Method Details

.configObject



21
22
23
# File 'lib/active_model_serializers.rb', line 21

def self.config
  ActiveModel::Serializer.config
end

.default_include_directiveJSONAPI::IncludeDirective

Memoized default include directive

Returns:

  • (JSONAPI::IncludeDirective)


36
37
38
# File 'lib/active_model_serializers.rb', line 36

def self.default_include_directive
  @default_include_directive ||= JSONAPI::IncludeDirective.new(config.default_includes, allow_wildcard: true)
end

.location_of_callerObject

The file name and line number of the caller of the caller of this method.



26
27
28
29
30
31
32
# File 'lib/active_model_serializers.rb', line 26

def self.location_of_caller
  caller[1] =~ /(.*?):(\d+).*?$/i
  file = Regexp.last_match(1)
  lineno = Regexp.last_match(2).to_i

  [file, lineno]
end