Я использую grape
и grape-entity
в проекте Rails 4.2.1, и у меня возникает странная ошибка при представлении с использованием правильной модели.
Согласно документации, организация моих сущностей в каждой модели приводит к следующему:
Grape автоматически обнаружит класс Entity и будет использовать его для представления ваших моделей.
Кроме того, в документации также говорится:
По умолчанию каждый объект коллекции заключен в экземпляр вашего класса Entity.
Вот код, который у меня есть.
class User < ActiveRecord::Base
class Entity < Grape::Entity
expose :id, :name
expose :addresses
end
end
class Address < ActiveRecord::Base
class Entity < Grape::Entity
expose :id, :street1
end
end
Если я не сделаю expose :addresses, with: Address:Entity
, это не сработает и все равно будут открыты все поля адреса. По какой причине он автоматически не определяет правильную сущность?