The following configuration options can be set on
ActiveModelSerializers.config
, preferably inside an initializer.
The adapter to use.
Possible values:
:attributes
(default):json
:json_api
Enable automatic serializer lookup.
Possible values:
true
(default)false
When false
, serializers must be explicitly specified.
The key transform to use.
Option | Result |
---|---|
:camel |
ExampleKey |
:camel_lower |
exampleKey |
:dash |
example-key |
:unaltered |
the original, unaltered key |
:underscore |
example_key |
nil |
use the adapter default |
Each adapter has a default key transform configured:
Adapter | Default Key Transform |
---|---|
Json |
:unaltered |
JsonApi |
:dash |
config.key_transform
is a global override of the adapter default. Adapters
still prefer the render option :key_transform
over this setting.
NOTE: Key transforms can be expensive operations. If key transforms are unnecessary for the
application, setting config.key_transform
to :unaltered
will provide a performance boost.
What relationships to serialize by default. Default: '*'
, which includes one level of related
objects. See includes for more info.
Sets whether the type
of the resource should be singularized
or pluralized
when it is not
explicitly specified by the serializer
Possible values:
:singular
:plural
(default)
Include a top level jsonapi member in the response document.
Possible values:
true
false
(default)
The latest version of the spec to which the API conforms.
Default: '1.0'
.
Used when jsonapi_include_toplevel_object
is true
Optional top-level metadata. Not included if empty.
Default: {}
.
Used when jsonapi_include_toplevel_object
is true
To run a hook when ActiveModelSerializers is loaded, use
ActiveSupport.on_load(:action_controller) do end