0

我的 Rails 7 应用程序中有一个应用程序目录 app/beer,在该文件夹中有一个名为 cool.rb 的文件,其中定义了执行方法。

因此,在 ActiveJob DrinkSudsJob执行方法中,我从cool.rb 调用方法执行为:

def perform
  Beer::Cool.execute
end

但是我的应用程序爆炸了。告诉我统一常量 DrinkSudsJob::Beer

Zeitwerk:check 告诉我一切都很好。我在这里做错了什么?

bin/rails r 'puts ActiveSupport::Dependencies.autoload_paths'
/Users/sputz/Documents/Workspace/Apps/2022/fug/app/beer
4

1 回答 1

1

如果zeitwerk:check通过并且app/beer在自动加载路径中,则app/beer/cool.rb定义(并且必须定义)Cool,而不是Beer::Cool.

于 2022-02-25T19:53:00.570 回答