http://guides.rubyonrails.org/association_basics.html#self-joinsにある次の自己結合モデルの例は正しくないと思います。
class Employee < ActiveRecord::Base
has_many :subordinates, :class_name => "Employee",
:foreign_key => "manager_id"
belongs_to :manager, :class_name => "Employee"
end
以下のようにすべきだと思います。どちらが正しいのか、その理由を教えてください。
class Employee < ActiveRecord::Base
has_many :subordinates, :class_name => "Employee",
belongs_to :manager, :class_name => "Employee", :foreign_key => "manager_id"
end
私の理論的根拠:モデルベアリングbelongs_to
リレーションは、それが参照するモデルのforeign_keyを運びます。