如何处理我的整体模型?

时间:2011-03-07 05:54:00

标签: ruby-on-rails ruby module model

我的用户模型大约是2k行代码。我确信这是许多应用程序的情况。但是,在我看来,可读性甚至可维护性在超过400行代码的模型中开始降低。所以我开始在用户模型中获取相关代码,并在lib中的模块中组织它。例如,如果我有与用户的朋友相关的代码,那么我创建了一个名为UserFriend的模块,并将其包含在用户模型中。

这样做有助于解决原始问题。但是,缺点是每次我在开发环境中修改模块中的代码时,我都要重新启动服务器来加载它。

所以:

  1. 是我最初的做法 处理整体模型 正确的吗?
  2. 我该怎么做才能避免 必须重新启动我的服务器才能加载 用户模块中的代码更改?

2 个答案:

答案 0 :(得分:0)

你可以做一件事,只需将你的帮助模块保存在模型文件夹中,而不是保留在lib文件夹中,或者在模型中创建一个文件夹,你可以保留所有的帮助模块。我认为这种方法没有任何问题。

答案 1 :(得分:0)

互联网上有一些解决方案可以在开发模式下自动重新加载lib文件夹。

One post我发现如果您需要使用require_dependency而不是require的文件,则会在每次请求时重新加载该文件。

另一个更“hacky”的解决方案can be found here,并涉及向before_filter添加ApplicationController