Make root node in Active Model Serializer
active-model-serializers, activerecord, ruby-on-rails
Solution
This was covered in RailsCast #409 Active Model Serializers.
In order to remove the root node, you add `root: false` in the call to `render` in your controller. Assuming your `contact`s in JSON come from a `contacts#index` method, your code may look something like:
def index
@contacts = Contacts.all
respond_to do |format|
format.html
format.json { render json: @contacts, root: false }
end
end
Or, if you don't want any root nodes in any of your JSON, in your `ApplicationController`, add the following method:
def default_serializer_options
{root: false}
end
Problem
I have an array of JSON in my Rails App in this format using Active Model Serializer: ``` [ { "contact" : {} }, { "contact" : {} } ] ``` How do I make it so that I remove one level of node above the contact USING active model serializer like this: ``` [ { }, { } ] ``` I also want to remove the node name "contact".