文件自动加载到 Rails env

Files auto-loaded into Rails env

我很难理解文件何时自动加载到 Rails 应用程序以及何时需要手动加载文件的规则。例如,控制器测试通常需要 'rails_helper',但功能测试则不需要(至少默认情况下)。另一个例子:用户模型 class 可以从 Rake 任务访问..

None 的视图助手需要被要求,并且通常要求某些东西会破坏程序。有人可以帮助我理解/知道什么时候我应该需要一些东西而不是相信它是自动加载的吗?

我知道我可以配置从 config/application.rb 自动加载哪些文件,但我想了解 Rails env.

附带的内容

根据Rails 5 Documentationapp/config/ 路径下的所有文件都是自动加载的。 然后您可以创建一个 app/lib 子文件夹,您可以在其中放置您的 类 和模块。

只有当你声明它调用环境时,rake 任务才会加载这些文件,例如:

desc 'My task name'
rake task_name: :environment do
  # Do something
end

你有没有更具体的意思?