Reputation: 379
I using active_model_serializers gem, and I need to get nested attributes of Service model
class Category < ActiveRecord::Base
has_many :subcategories
end
class Subcategory < ActiveRecord::Base
has_many :services
end
class Service < ActiveRecord::Base
belongs_to :subcategory
end
Serializers:
class CategorySerializer < ActiveModel::Serializer
attributes :id, :title
has_many :subcategories, serializer: SubcategorySerializer
end
class SubcategorySerializer < ActiveModel::Serializer
attributes :id, :title
has_many :services, serializer: SubcategorySerializer
end
class ServiceSerializer < ActiveModel::Serializer
attributes :id, :title
end
Category Controller:
class CategoriesController < BaseController
def index
categories = Category.all
render json: categories, each_serializer: CategorySerializer
end
end
Category serializers don't return nested attributes of Service model.
{
"id": 1,
"title": "Category 1",
"subcategories": [
{
"id": 1,
"title": "Sub category 1"
},
{
"id": 2,
"title": "Sub category 2"
}
]
}
I need to get json result with nested Service model in subcategory I using active_model_serializers (~> 0.10.2) How do that?
Upvotes: 0
Views: 395
Reputation: 5895
In config/initializers/active_model_serializer.rb
file add ActiveModel::Serializer.config.default_includes = '**'
Upvotes: 2