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

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

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

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

1 Ответ

0 голосов
/ 24 января 2019

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

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

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

...