Рассмотрим ниже двух лиц: почт, АвторыКак группа ассоциаций атрибутов в коллекции (Active Model Serializer)
class PostSerializer < ActiveModel::Serializer
attributes :id, :title, author_id
belongs_to :author
end
Class AuthorSerializer < ActiveModel::Serializer
attributes :id, :name
end
с помощью „адаптера JSON“, для указательного действия PostsController мы получаем ответ как указано ниже:
{
"posts":[
{
"id":1,
"title":"Hic consectetur et delectus",
"author_id": 1,
"author":{"id":1,"name":"Author-A"}
},
{
"id":2,
"title":"Hic consectetur et delectus",
"author_id": 2,
"author":{"id":2,"name":"Author-B"}
},
{
"id":3,
"title":"Hic consectetur et delectus",
"author_id": 1,
"author":{"id":1,"name":"Author-A"}
}
]
}
Возможно ли группировать данные авторов за пределами данных Почты для бокового нагружения? (как показано ниже)
{
posts:[{...}, {...}, {...}],
authors:[
{id:1, name:'Author-A'},
{id:2, name:'Author-B'}
]
}
Это вполне возможно, но тогда вы потеряете отношение .. что это делает ... это так же хорошо, как наличие двух объектов ActiveRecord по отдельности. – Abhinay
В системе есть несколько компонентов, которые ожидают данные в вышеупомянутом формате. Это возможно в AMS 0.8.x с использованием вставки: ids, но не удалось найти эквивалент для этого в AMS 0.10.x –
0.8 можно подумать о раннем проекте jsonapi. Embed стал включенным. – BF4