Rails 3 中库的推荐位置在哪里?它像“lib”那么简单吗?
我不确定,因为“lib”看起来更像是 Rails 2 的残余,特别是考虑到它不再自动加载(显然,对此有很多讨论)。
初始化器更多地用于(显然)初始化任务,例如覆盖。
具体来说,我有一个用于附件处理的小模块(回形针不适合这里),它太大且独特,无法包含在我的模型中,但不够通用或不值得作为 gem 实现。
从功能的角度来看,它位于模型、 View 和 Controller 的中间位置。这使得它听起来像一个助手,但在 Rails 中,助手是用于 View 的。
我应该把它放在“lib”中并自动加载到application.rb中吗?或者也许我可以创建一个自定义表单生成器来处理演示文稿(或两者)。
我知道如何让它发挥作用,但我希望学到一些新东西。 :)
最佳答案
lib 仍然是放置这些东西的正确位置。
由于引擎的工作方式,自动加载库在 Rails 3 中被删除,但主要是因为如果您确实希望自动加载它,则可以轻松地将其添加到 autoload_paths 中,如果不需要,您可以根据需要进行 require。 lib 仍在加载路径中,因此您无需指定您需要的模块或类的位置。
你是对的,助手是用于 View 的,而不是放置任何与模型相关的逻辑的地方。
我会将模块放入 lib 中,并根据需要将其包含在您的模型中。
关于ruby-on-rails - Rails 3 中的库应该放在哪里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4794384/