我有这堂课:
# app/events/new_request.rb
class Events::NewRequest
end
我将该文件夹添加到自动加载:
# config/application.rb
config.autoload_paths += %W( events/ )
运行rails c
时:
> Events::NewRequest
NameError: uninitialized constant Events
问题是如果我在定义类时不使用命名空间“Events”,它会成功自动加载类。
答案 0 :(得分:2)
module Sandbox
class Application < Rails::Application
config.autoload_paths += [config.root.join('app')]
end
end
这将让Rails从Events::NewRequest
自动加载app/events/new_request.rb
。
irb(main):001:0> Events
=> Events
irb(main):002:0> Events::NewRequest
=> Events::NewRequest