【问题标题】:Why is the lib directory in Rails not in the autoload path by default?为什么 Rails 中的 lib 目录默认不在自动加载路径中?
【发布时间】:2020-04-08 21:38:12
【问题描述】:

我知道lib/ 目录可以很容易地添加到autoload_pathseager_load_paths。但我不太明白为什么lib/ 中的文件默认不自动加载或急切加载?

不幸的是,我在任何地方都找不到简单的答案,所以如果有人能简单地向我解释一下,我将不胜感激!

【问题讨论】:

    标签: ruby-on-rails autoload


    【解决方案1】:

    因为没有将需要自动加载的文件放入 lib 的 Rails 约定。 lib 用于驻留在 lib/tasks 的 rake/thor 任务和其他任务。

    您的应用程序特定文件应位于app。如果您发现自己想在lib 中添加一些东西,它可能属于app 中的某个位置,或者在一个Gem 中。

    【讨论】:

    • app 下的任何内容都将被自动加载。您可以将app/lib 用于不适合默认目录的内容,或者组成一个新目录。比如我把服务对象放到app/services.
    猜你喜欢
    • 1970-01-01
    • 2016-09-19
    • 1970-01-01
    • 2023-03-09
    • 1970-01-01
    • 1970-01-01
    • 2012-02-27
    • 2014-03-10
    • 1970-01-01
    相关资源
    最近更新 更多