Grape Entity выставляется для делегирования / пересылки другому объекту

При использовании Grape Entity иногда мы хотим выставить несколько полей из внутреннего / связанного объекта. Мы можем просто сделать это:

expose(:bar) { |entity| entity.foo.bar }

Однако, если многие области нуждаются в этой обработке, это может стать очень повторным. Есть ли способ определить делегирование / пересылку, так что куча expose все связаны с другим объектом?

1 ответ

Создать отдельную сущность для foo класс, давайте назовем это API::Entities::Foo, тогда ты можешь

  expose :foo, using: API::Entities::Foo

Вы должны следовать рекомендациям REST для сериализации, как это. Вы имеете дело с ресурсами. не разбивайте его на плоские, громоздкие структуры данных.

Другие вопросы по тегам