假设我有一个Person
has_many
和:foos
的对象:bars
。
给定一个实例p(p = Person.new
),我如何以编程方式确定可用的关系?
即。 p.some_method => ["foo", "bar"]
答案 0 :(得分:12)
您可以使用Active Record Reflections(API here)
在你的例子中:
p.class.reflect_on_all_associations(:has_many).collect {|a| a.name}