我在Ruby中编写了一个类,它位于我的 config / com / meow 位置。创建我的课程后,我将application.rb config.autoload_paths 设置为以下内容:
config.autoload_paths += %W(#{config.root}/com/meow/)
执行此操作时,我收到一条错误,表示未初始化的常量。
认为我可能加载了错误的路径,我改变了以下路径:
config.autoload_paths += Dir["#{config.root}/com/meow/"]
这样做之后,我仍然收到同样的错误,'未初始化的常数'。
我的目标是引用我的自定义Ruby类中存在的公共方法。我想从ApplicationController
。
在ApplicationController
内,我引用了[class]定义的类和方法。[方法]
我需要做些什么来解决这个错误,并从我的ApplicationController
引用我班级中包含的方法?
答案 0 :(得分:1)
我认为你对config.root
将会是什么感到困惑。 config.root
是应用程序的根目录,通常是app/
,config/
,db/
,......目录。因此,如果您想将config/com/meow
添加到自动加载路径,那么您需要:
config.autoload_paths += %W(#{config.root}/config/com/meow)
我可能只是将您的自定义类放在lib/
中,然后它们将位于人们通常会看到的标准位置,您不必担心自定义自动加载路径。