我已将对象添加到lib文件夹中。
第一次运行良好,但是如果我修改控制器或模型,则显示Uninitialized constant error
....
这是lib / lib_object.rb
class LibObject
def object_description
"object description"
end
end
它是从模型中调用的。
def object_description
return LibObject.new.object_description
end
我不确定,为什么对某些代码进行修改后会得到uninitialized constant error
……
所以我需要每次重新启动服务器(更新代码)。
谢谢。
答案 0 :(得分:1)
可以将其添加到您的config/application.rb
中以加载lib/
目录:
config.eager_load_paths << Rails.root.join('lib')
添加后重新启动本地服务器。
请记住,如果您使用autoload_paths:
但是过去,开发人员可能会自行使用autoload_paths(前轨5),将autoload_paths配置为添加额外的位置(例如lib,几年前曾经是autoload路径列表,但现在不再是)。但是,现在不建议在大多数情况下使用此方法,因为这可能会导致仅生产错误。