2011-03-21 54 views
1

ActiveRecord中,我习惯这样做:使用Gem中的类和实例方法扩展Mongoid

ActiveRecord::Base.send :include, MyGem::ActsAsMagnific::Base 

它就像一个魅力。

但是我无法在Mongoid中获得相同的结果。我尝试了这个没有成功:

Mongoid::Document::ClassMethods.class_eval do 
    include MyGem::ActsAsMagnific::Base 
end 

我正在使用rails3而且我要包含类和实例方法。

回答

1

如果你想添加类方法到Mongoid :: Document,也许你应该尝试扩展它。 在任何情况下,最好使用ActiveSupport :: Concern来执行此类任务。 例如看到这个帖子: Using ActiveSupport::Concert

+0

看起来像一个伟大的答案,我会仔细看看它。谢谢 – apneadiving 2011-04-03 23:23:11

+0

不幸的是还没有喜悦。 – apneadiving 2011-04-09 22:09:01

+0

问题在哪里? ;) – Roman 2011-04-09 23:55:46