How do I get all associated models from an ActiveRecord object?
1 answer
Order.reflect_on_all_associations.map(&:class_name)
You can pass the type of the relationship as a parameter:
Order.reflect_on_all_associations(:has_one)
Read about ActiveRecord :: Reflection :: ClassMethods
EDIT
Just realized you asked about object-associated models.
So, with what I have already shown, you can simply do something along the following lines:
@some_order = Order.first
associated_models = @some_order.class.reflect_on_all_associations.map(&:class_name)
+5
source to share