相同模型之间的Ruby关系

Mat*_*art 1 ruby activerecord ruby-on-rails

我有一个rails中的模型,比方说User,我希望与另一个用户有关系.

用户A,可以是用户B的老板,用户B可以是用户C和D的老板.

这种关系是一对多的.一个用户可以站在多个用户之上.

我该怎么做
我的用户模型目前有一个ID名称boss_id,如果用户位于食物链的顶部,则该名称将为零.

我的活动记录类看起来像这样:

class User < ActiveRecord::Base

  has_many :users #People beneath the user
  belongs_to :user
end
Run Code Online (Sandbox Code Playgroud)

但现在我想使用与名称的关系.让我们说bossfollowers.

我怎样才能做到这一点?

Mau*_*res 6

这是它的样子:

class User < ActiveRecord::Base

    belongs_to :boss, :class_name => 'User'
    has_many :followers, :class_name => 'User', :foreign_key => :boss_id

end
Run Code Online (Sandbox Code Playgroud)