【发布时间】:2011-07-09 06:50:25
【问题描述】:
我有一个看起来像这样的模型,#friends 方法覆盖了关联生成的方法#friends:
class User < ActiveRecord::Base
has_many :friends
def friends
puts 'hi'
end
end
但是当我将代码重构为如下所示时,关联生成的方法#friends 不会被包含的好友模块覆盖:
module User
module Friends
def friends
puts 'hi'
end
end
end
require 'user/friends'
class User < ActiveRecord::Base
has_many :friends
include User::Friends
end
为什么关联生成的#friends 不会被包含的 User::Friends#friends 方法覆盖?
【问题讨论】:
-
无论如何,覆盖 ActiveRecord 关联可能不是一个好主意。可能会导致一些问题。
标签: ruby-on-rails ruby include