2011-05-27 45 views
0

我有一堂课,我想重新开放,这是一个宝石。重新开放一个类,在哪里放这个代码?

我把它放在:

/lib/ClassName.rb

class ClassName 
    class << self 
    def some_method(a) 
    end 
    end 
end 

现在,如果我把这个类的方法,它说,它一个未定义的方法。

我的自动加载设置为/ lib文件夹。

这是错误的方式做到这一点?

+1

'lib'不是在轨自动加载路径3是你的问题? – cam 2011-05-27 20:24:09

+0

我添加它在application.rb – Blankman 2011-05-27 20:28:10

+0

你做了'require'ClassName''吗? – 2011-05-27 20:31:39

回答

1

我发现有时我需要手动要求某些文件(特别是那个猴子补丁现有类/模块),即使lib文件夹被配置为自动加载。我还没有弄清楚为什么。

为了解决这个问题,在config/initializers/application.rb(如果需要创建它)我将需要手动将文件:

require 'ClassName'