Changing Active Model Serializers Default Adapter

Jshoe523 picture Jshoe523 · Nov 10, 2015 · Viewed 7.6k times · Source

If I want to switch from the default attributes adapter to the json api adapter, where would I do this?

The getting started states this:

Generally speaking, you as a user of AMS will write (or generate) these serializer classes. If you want to use a different adapter, such as a JsonApi, you can change this in an initializer:

ActiveModel::Serializer.config.adapter = :json_api

What initializer are they referring to? Do I create a new one? Sorry for the noob question

Answer

K M Rakibul Islam picture K M Rakibul Islam · Nov 10, 2015

In general, initilizers are put under the app/config/initializers directory in a Rails app.

So, in your case, you can create a new file there: ams.rb and put those content in that file:

# app/config/initializers/ams.rb    
ActiveModel::Serializer.config.adapter = :json_api

Also, see this github issue.

If you want to be using the :json_api format, you have to use the 0.10.0 branch off of Github.