0
Я пытаюсь загрузить ассоциацию следующим образом:Активные данные Модель сериализаторы атрибуты объединения не загружаются
Это мой контроллер, который пытается оказать JSON.
#app/controllers/store/products_controller.rb
def customize
@option_types = OptionType.all
respond_to do |format|
format.json { render :json => @option_types}
end
end
Это сериализатор для объекта над
#app/serializers/option_type_serializer.rb
class OptionTypeSerializer < ActiveModel::Serializer
attributes :id, :key, :customizable, :name
has_many :option_values
end
значение_опции belong_to
option_type
#app/serializers/option_value_serializer.rb
class OptionValueSerializer < ActiveModel::Serializer
attributes :id, :key, :option_type_id, :percentage_price_impact, :fixed_price_impact, :absolute_price_impact, :name
end
Это генерирует следующий JSON. Хотя ряд других Params указаны в option_value_serializer.rb, только идентификатор и тип появляются в сгенерированном JSON
// http://0.0.0.0:3000/products/810/customize.json
{
"data": [
{
"id": "1",
"type": "option-types",
"attributes": {
"key": "fabric",
"customizable": true,
"name": "FABRIC"
},
"relationships": {
"option-values": {
"data": [
{
"id": "1",
"type": "option-values"
},
{
"id": "2",
"type": "option-values"
}
]
}
}
},
{
"id": "2",
"type": "option-types",
"attributes": {
"key": "cuff-type",
"customizable": false,
"name": "CUFF TYPE"
},
"relationships": {
"option-values": {
"data": [
]
}
}
},
{
"id": "3",
"type": "option-types",
"attributes": {
"key": "vents",
"customizable": false,
"name": "VENTS"
},
"relationships": {
"option-values": {
"data": [
]
}
}
}
]
}