如果我具有以下目录和文件结构,如何加载我的服务模块:
MarketShare::Foo
在
app/services/market_share/foo.rb
因此我可以使用Rails控制台(例如:MarketShare::Foo
)访问此模块,但是在Report::MarketSharesController
的控制器app/controllers/report/market_shares_controller.rb
中,我遇到此错误:
NameError: uninitialized constant Report::MarketSharesController::Foo
当我打电话给MarketShare::Foo
时。
我也在自动加载程序中插入了此路径:
config.autoload_paths.push(Rails.root.join('app/services/market_share'))
但是我又遇到了同样的错误。
编辑:伙计们,我也尝试停止rails server
并也停止spring
,但是错误仍然存在。
答案 0 :(得分:0)
您不需要此配置:
config.autoload_paths.push(Rails.root.join('app / services / market_share'))
尝试以下操作:
1- STOP导轨:CRTL + z
2- STOP弹簧:仓/弹簧停止
3- START Rails:bin / rails s
重新加载您的应用