Получение списка связанных моделей в рельсах - PullRequest
9 голосов
/ 11 сентября 2010

Предположим, у меня есть объект Person, который has_many :foos и :bars.

Учитывая экземпляр p (p = Person.new), как программно определить, какие отношения доступны?

т.е. p.some_method => ["foo", "bar"]

1 Ответ

12 голосов
/ 11 сентября 2010

Вы можете использовать Active Record Reflections (API здесь )

В вашем примере:

p.class.reflect_on_all_associations(:has_many).collect {|a| a.name}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...