Я использую active_model_serializers
в своем приложении (для API):
class TrainingModuleSerializer < ActiveModel::Serializer
attributes :id, :name, :description, :status, :module_type
has_many :courses, serializer: CourseSerializer
end
class CourseSerializer < ActiveModel::Serializer
attributes :id, :name
end
def training_module_list
@training_modules = TrainingModule.where(tenant_id: 1)
render :json => @training_modules
end
В некоторых API мне нужно добавить данные курсов (существует has_many
связь с training_module
), нов некоторых API я не хочу добавлять данные курсов.
Кто-нибудь может объяснить, как я могу это сделать?