Ruby on rails 在何处放置业务逻辑类

Ruby on rails 在何处放置业务逻辑类,ruby-on-rails,Ruby On Rails,例如,我有一个从网站收集数据并返回对象集合的类。此数据不存储在数据库中,因此它不是模型。此类由许多控制器使用,因此它不是控制器 在哪里可以放置这些文件?我通常将这些类放置在lib目录中。我通常将这些类放在lib目录中。不仅仅是需要它们。应该进入lib文件夹!也许是模块 应该进入lib文件夹!也许是模块 其a值对象应在整个站点保持不变,您的控制器或其他组件应使用模型中的引用,类引用应在模型中,类本身可与值对象一起放置其a值对象在整个站点保持不变,您的控制器或其他组件应该使用模型中的引用,类引用应该

例如,我有一个从网站收集数据并返回对象集合的类。此数据不存储在数据库中,因此它不是模型。此类由许多控制器使用,因此它不是控制器


在哪里可以放置这些文件?

我通常将这些类放置在lib目录中。我通常将这些类放在lib目录中。不仅仅是需要它们。

应该进入lib文件夹!也许是模块

应该进入lib文件夹!也许是模块

其a值对象应在整个站点保持不变,您的控制器或其他组件应使用模型中的引用,类引用应在模型中,类本身可与值对象一起放置

其a值对象在整个站点保持不变,您的控制器或其他组件应该使用模型中的引用,类引用应该在模型中,类本身可以与值对象一起放置

我会将它们放在应用程序/模型中。这样,您就不必处理自动加载路径或require与require_依赖关系

类没有持久化到数据库并不意味着它不是数据模型的一部分。将它们放入lib表明它们是某种实用程序类,与你的应用程序没有太大关系


Rails混淆了模型和持久性。我认为将一些业务逻辑与持久化实体结合在一起是很好的,但是没有理由不能在ActiveRecord对象之外拥有模型逻辑。

我会将它们放在app/models中。这样,您就不必处理自动加载路径或require与require_依赖关系

类没有持久化到数据库并不意味着它不是数据模型的一部分。将它们放入lib表明它们是某种实用程序类,与你的应用程序没有太大关系


Rails混淆了模型和持久性。我认为将一些业务逻辑与持久化实体结合在一起是很好的,但是没有理由不能在ActiveRecord对象之外使用模型逻辑。

您可能希望使用require\u依赖关系。否则,您必须重新启动服务器以获取更改。您需要使用require\u dependency。否则,您必须重新启动服务器以获取更改。