1

当你想在 Rails 3 中编写一个内部服务层时,你应该把代码放在哪里?我来自 Grails 背景,想知道 Rails 中的服务等价物是什么。

此外,如果文章或在线视频中涵盖了这一点 - 希望有链接。谢谢。

4

1 回答 1

3

在这种情况下,Rails 约定通常是将这些东西放在 lib 文件夹中(即 lib/services/erp_service.rb)。我在 'app' 目录下创建了一个 'Services' 文件夹来包含过去的类似服务。我不相信你需要做任何额外的事情来加载类,但是如果你想把你的服务放在'app'目录下并且它们似乎没有加载你可以尝试使用config.autoload_pathsapplication.rb 中的选项(在 Rails 3.x 应用程序中)

# Custom directories with classes and modules you want to be autoloadable.
# config.autoload_paths += %W(#{config.root}/extras)
config.autoload_paths += %W(#{config.root}/lib
于 2011-09-03T03:32:16.457 回答