你如何获得具有MyObject has_many的模型的名称?

时间:2012-01-27 08:46:43

标签: ruby-on-rails activerecord has-many belongs-to model-associations

使用Ruby(1.8.7)和Rails(2.3.8)

执行myObject.attributes会为您提供属性值的哈希值。

假设我有这样的情景:

class MyObject
    has_many :other_objects

class OtherObject
    belongs_to :my_object

应该有办法让关联的名称与对象绑定,对吗?

即使没有默认值,我也会对.associations方法感兴趣,类似于.attributes - 除了返回数组而不是哈希。

2 个答案:

答案 0 :(得分:1)

reflect_on_all_associations应该这样做。

示例:

MyObject.reflect_on_all_associations.map{|a| a.name.to_s} #=> ["other_objects"]

答案 1 :(得分:0)

MyClass.reflections

为您提供activerecord具有的所有关联和聚合,并为您提供有关它们的所有信息(关联对象的类,外键等)。