2011-06-16 88 views
1

我正在使用Ruby on Rails 3.0.7,我想知道如何检索两个类\模型之间的名称活动记录关联检索两个类模型之间的活动记录关联名称

也就是说,我有两个型号

class User < ActiveRecord::Base 
    has_many :accounts 
end 

class Account < ActiveRecord::Base 
    belongs_to :users 
end 

,我想找回(运行时),他们协会的名称,在这种情况下accountsusers字符串。

可能吗?如果是这样,我该怎么做?


UPDATE

如果我有UserAccount类(请参见下面的例子)以上的关联语句,我怎么可以检索准确UserAccount协会的名字吗?

class User < ActiveRecord::Base 
    has_many :accounts 
    has_many :articles 
    has_many :comments 
end 

class Account < ActiveRecord::Base 
    belongs_to :users 
    has_many :articles 
    belongs_to :authorization 
end 

回答

2

User.reflect_on_all_associations.each do |assoc| 
    puts "#{assoc.macro} #{assoc.name}" 
end 
#=> "has_many accounts" 

UPD

User.reflect_on_all_associations.select{|a| a.class_name == "Account"}.each do |assoc| 
    puts "#{assoc.macro} #{assoc.name}" 
end 
#=> "has_many accounts" 
+0

如果我必须在用户和帐户类的更多的关联语句?我如何检索'用户'账户'关联? – user502052 2011-06-16 12:43:55

+0

@ user502052,我已经更新了我的答案 – fl00r 2011-06-16 12:57:26

相关问题