在ActiveRecord
中,我习惯这样做:
ActiveRecord::Base.send :include, MyGem::ActsAsMagnific::Base
它就像一个魅力。
但我无法在Mongoid
中获得相同的结果。我试了这个没有成功:
Mongoid::Document::ClassMethods.class_eval do
include MyGem::ActsAsMagnific::Base
end
我正在使用rails3而且我要包含类和实例方法。
答案 0 :(得分:1)
如果你想为Mongoid :: Document添加类方法,也许你应该尝试扩展它。 在任何情况下,最好使用ActiveSupport :: Concern来完成这样的任务。 例如,请看这篇文章: Using ActiveSupport::Concert
答案 1 :(得分:0)
我不能对上面的答案发表评论,但取代罗马所说的新网址是:http://pivotallabs.com/using-activesupport-concern-for-easy-mix-ins/